System

The system addresses the inefficiencies of conventional e-commerce search methods by analyzing ambiguous inquiries, identifying user intent, and using machine learning to provide personalized product suggestions, enhancing user satisfaction and search efficiency.

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

Patent Information

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

AI Technical Summary

Technical Problem

Conventional e-commerce systems require users to enter specific product names and detailed keywords for searching, which is time-consuming, and lack personalized suggestions based on user preferences, making it difficult to find desired products, especially in response to vague inquiries.

Method used

A system that accepts ambiguous natural language inquiries, utilizes a natural language processing module to analyze user intent, retrieves past purchase and browsing history to identify preferences, searches for optimal products, generates suggestions, and updates a machine learning model based on user feedback to improve accuracy.

Benefits of technology

This system reduces user effort and time by providing efficient and personalized product search and suggestions, accurately responding to vague inquiries and improving suggestion accuracy over time.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026014200000001_ABST
    Figure 2026014200000001_ABST
Patent Text Reader

Abstract

A system is provided.SOLUTION: A system comprising: means for receiving an ambiguous natural language inquiry from a user; means including a natural language processing module for analyzing the inquiry and identifying an intention of the user; means for acquiring a past purchase history and a past browsing history of the user from a database and analyzing a preference of the user; means for searching for an optimal product and generating a suggestion candidate based on the analysis result; means for presenting the suggestion candidate to the user; and means for receiving feedback from the user and updating a machine learning model for improving suggestion accuracy.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] In conventional e-commerce systems, users are required to enter specific product names and detailed keywords when searching for products, which takes time and effort. Furthermore, there is a lack of personalized suggestions based on the user's preferences and lifestyle, which can reduce user satisfaction. Furthermore, there are no systems that can suggest appropriate products in response to vague inquiries, making it difficult for users to find the products they want. [Means for solving the problem]

[0005] In order to solve the above-mentioned problems, the present invention provides a system including: means for accepting inquiries from users in ambiguous natural language; means including a natural language processing module for analyzing the inquiries and identifying the user's intentions; means for retrieving the user's past purchase history and browsing history from a database and analyzing the user's preferences; means for searching for optimal products based on the analysis results and generating suggested candidates; means for presenting the suggested candidates to the user; and means for receiving feedback from the user and updating a machine learning model to improve suggestion accuracy, thereby reducing the user's time and effort and realizing efficient and personalized product search and suggestions.

[0006] "User" means an individual or entity that uses the System to search for and purchase products.

[0007] A "vague natural language query" is a linguistic expression based on a user's general requests or interests, which does not include specific product names or detailed keywords.

[0008] A "natural language processing module" is a software component that analyzes natural language inquiries from users and understands their meaning and intent.

[0009] "User intent" refers to the desires and interests that a user wishes to express through a natural language query.

[0010] A "database" is an information storage system that stores information such as a user's past purchase history and browsing history.

[0011] "User preferences" refers to the user's past preferences and interests in products and services.

[0012] "Product" is a general term for goods and services sold in an electronic commerce system.

[0013] "Suggestion candidates" are candidates for products and services that should be proposed to the user, selected based on the user's intentions and preferences.

[0014] A "machine learning model" is a learning algorithm and its implementation that improves the accuracy of suggestions based on user feedback.

[0015] "Feedback" means the evaluation or opinion given by a user regarding a proposed product or service.

[0016] "Suggestion accuracy" refers to the degree to which products and services can be suggested that match the user's needs and preferences. [Brief explanation of the drawings]

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

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

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

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

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

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

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

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

[0025] [First embodiment]

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

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

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

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

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

[0031] The output device 40 includes a display 40A and a speaker 40B, and presents data to the user 20 by outputting the data in a form 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.

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

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

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

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

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

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

[0038] The CuraAI system of this invention is a system that suggests optimal products in response to ambiguous inquiries from users in natural language. This system aims to significantly improve the process by which users efficiently search for and purchase products.

[0039] System Configuration

[0040] The CuraAI system consists of the following main components:

[0041] 1. User Interface (Terminal)

[0042] 2. Backend Processing Server (Server)

[0043] 3. Natural Language Processing Module

[0044] 4. User Profile Database

[0045] 5. Product Database

[0046] 6. Machine Learning Models

[0047] User Interface (Terminal)

[0048] The terminal provides an interface for users to input queries in natural language. Users can input vague requests through the application, such as "I want the latest trending gadgets." The terminal is responsible for transmitting this input to the server.

[0049] Backend processing server (server)

[0050] The server plays a central role in receiving and analyzing user input. Specifically, the server:

[0051] The user's vague query is sent to a natural language processing module for analysis.

[0052] Obtain past purchase and browsing history from the user's profile database.

[0053] Search for the best product from a product database based on the user's preferences.

[0054] Suggestions are generated and messages are constructed to present to the user.

[0055] Receive user feedback and update your machine learning models.

[0056] Natural Language Processing Module

[0057] The natural language processing module is a software component that analyzes vague user queries sent from the server and identifies their intent. For example, if a query says, "I want a gadget that's popular these days," the module analyzes the keywords "gadget" and "popular these days" to identify the appropriate product category.

[0058] User Profile Database

[0059] The user profile database stores information about each user's past purchase history, browsing history, and preferences. This database is used to provide personalized product recommendations for each user.

[0060] Product database

[0061] The product database stores information on all products handled within the system, including detailed information such as product name, price, reviews, related products, etc. The server searches this database for the most suitable product based on the user's preferences and the analysis results from the natural language processing module.

[0062] Machine learning models

[0063] The machine learning model is a learning algorithm and its implementation that improves the accuracy of suggestions based on user feedback. The server inputs user feedback (e.g., "I like it," "I want to see other suggestions," etc.) into the machine learning model to improve the accuracy of the next suggestion.

[0064] Specific examples

[0065] For example, suppose a user uses a device to input, "I want a gadget that's popular these days." The device sends this input information to the server. The server then sends the received input to a natural language processing module and receives the analysis results. It then retrieves the user's past purchase history from the user's profile database and analyzes their preferences. Next, it identifies "popular gadgets these days" from the product database and generates several candidate suggestions. It displays a suggestion message on the device (for example, "How about these smart glasses?") and receives feedback from the user. The server receives this feedback information and updates the machine learning model. This makes the next suggestions even more accurate.

[0066] The processing flow will be explained below.

[0067] Step 1:

[0068] Device: The user launches a CuraAI-enabled shopping app and is presented with an interface where they can type, "I want a gadget that's popular these days."

[0069] Step 2:

[0070] User: Type into the app in natural language, "I want a gadget that's popular these days."

[0071] Step 3:

[0072] Terminal: Takes user input and sends it to the server.

[0073] Step 4:

[0074] Server: Receives input and sends it to the natural language processing module to start the analysis.

[0075] Step 5:

[0076] Natural language processing module: Analyzes user queries, extracts keywords like "gadget" and "trendy," and identifies their meaning and intent.

[0077] Step 6:

[0078] Server: Receives the analysis results of the natural language processing module and clarifies the user's intent.

[0079] Step 7:

[0080] Server: Obtains the user's past purchase history and browsing history from the user profile database.

[0081] Step 8:

[0082] Server: Based on the acquired data, analyzes the user's preferences and identifies specific product categories that may interest the user.

[0083] Step 9:

[0084] Server: Searches for relevant gadgets from the product database based on the user's preferences and the analysis results of the natural language processing module.

[0085] Step 10:

[0086] Server: Generates multiple proposal candidates based on the acquired product information.

[0087] Step 11:

[0088] Server: Generates a message containing a suggestion candidate (e.g., "How about these smart glasses?") and sends it to the device.

[0089] Step 12:

[0090] Terminal: Displays suggested product information to the user.

[0091] Step 13:

[0092] User: Select feedback for the suggested product, such as "I like it" or "I'd like to see more options."

[0093] Step 14:

[0094] Terminal: Gets user feedback and sends it to the server.

[0095] Step 15:

[0096] Server: Receives feedback and stores it in a user profile database.

[0097] Step 16:

[0098] Server: Inputs the feedback information into the machine learning model and conducts training to improve the accuracy of the next proposal.

[0099] Step 17:

[0100] Server: Updates the system and prepares it for the next user session.

[0101] Example 1

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

[0103] Conventional online shopping systems have difficulty accurately understanding a user's intent and suggesting appropriate products when the user makes ambiguous inquiries in natural language. Furthermore, there are limited means for effectively using user feedback to improve the accuracy of suggestions. As a result, users often spend a lot of time before receiving a recommendation for a product that is just right for them. This invention aims to significantly improve the user's search and purchasing process by quickly and accurately suggesting optimal products in response to ambiguous inquiries in natural language.

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

[0105] In this invention, the server includes: means for accepting an ambiguous inquiry in natural language from a user; means including a natural language processing module for analyzing the inquiry and identifying the user's intention; means for acquiring the user's past behavioral history and interest information from a database and analyzing the user's preferences; means for searching for optimal products and generating suggested candidates based on the analysis results; means for presenting the suggested candidates to the user; means for receiving a response from the user and updating a machine learning model to improve suggestion accuracy; means for transmitting data from a terminal to the server; means for the server to select optimal product information from the search results and generate a suggestion message; and means for the terminal to receive the suggestion message and display it to the user. This makes it possible to make appropriate product suggestions in response to ambiguous user inquiries and further improve suggestion accuracy based on user feedback.

[0106] An "ambiguous natural language query" refers to a user inputting a vague request in natural language without providing clear and specific instructions.

[0107] A "natural language processing module" is a software component that analyzes the natural language input by the user and identifies their intent.

[0108] "Behavioral history" is data that records information about actions such as purchases and browsing that a user has performed in the past.

[0109] "Interest information" refers to information about the interests and preferences that a user has previously shown.

[0110] A "database" is an information system for efficiently managing and searching large amounts of data.

[0111] "Preferences" refers to information that reflects a user's preferences and interests.

[0112] "Suggested candidates" is a list of product candidates that are proposed to the user, generated based on the user's request and the analysis results.

[0113] "Response" refers to the feedback and actions that users take regarding the proposed products.

[0114] A "machine learning model" refers to an algorithm or its implementation that learns from data and makes predictions or classifications.

[0115] A "terminal" is an electronic device (e.g., smartphone, tablet, or PC) with which a user interacts.

[0116] A "server" is a central computer system for processing and managing data.

[0117] "Message" refers to text or information to be communicated to a user.

[0118] "Generation" is the process of creating new information or messages based on data and analytical results.

[0119] The present invention relates to a system that proposes optimal products in response to ambiguous inquiries made by users in natural language. The purpose of the present invention is to significantly improve the process by which users efficiently search for and purchase products.

[0120] System Configuration

[0121] The CuraAI system consists of the following main components:

[0122] 1. User Interface (Terminal)

[0123] 2. Backend Processing Server (Server)

[0124] 3. Natural Language Processing Module

[0125] 4. User Profile Database

[0126] 5. Product Database

[0127] 6. Machine Learning Models

[0128] User Interface (Terminal)

[0129] The terminal provides an interface for users to input queries in natural language. Users can input vague requests such as "I want the latest trending gadgets" through the application. The terminal is responsible for sending this input to the server. The specific software used is an application built with HTML and JavaScript. After the user has completed the input, the application prepares the data in JSON format and sends it to the server using an HTTP POST request.

[0130] Backend processing server (server)

[0131] The server plays a central role in receiving and parsing user input. Its responsibilities are to:

[0132] 1. Input Analysis

[0133] The server passes the user's input data to a natural language processing module and receives the analysis results, which uses Python's NLTK or SpaCy to parse the text and extract key keywords.

[0134] 2. Data Acquisition

[0135] The server uses SQL queries or a NoSQL database (e.g., MongoDB) to retrieve past purchase and browsing history from a user profile database, thereby understanding the user's preferences.

[0136] 3. Product Search

[0137] Based on the user profile and keywords, the server searches for the most suitable products from a product database, which contains details such as product names, prices, reviews, etc. For example, the server executes an SQL query to search for "the most popular gadgets these days."

[0138] 4. Proposal Message Generation

[0139] The server selects the most suitable product information from the search results and generates a message to suggest to the user, using a natural language generation (NLG) algorithm to construct a message such as, "How about these smart glasses?"

[0140] 5. Feedback Processing

[0141] The server receives feedback from users and stores it in a database, which is used to update the machine learning model.

[0142] Natural Language Processing Module

[0143] The natural language processing module is a software component that analyzes vague user queries sent from the server and identifies their intent. For example, it uses Python's NLTK and SpaCy to analyze text and extract the keywords "trending" and "gadget" from a query such as "I want a gadget that's popular these days."

[0144] User Profile Database

[0145] The user profile database stores information about each user's past purchase history, browsing history, and preferences. It is built using SQL or NoSQL database technology (e.g., MySQL, MongoDB), allowing for efficient information retrieval. This information is used to make personalized product suggestions for each user.

[0146] Product database

[0147] The product database stores all product information (e.g., product name, price, reviews, related products).

[0148] It uses SQL or NoSQL databases (e.g. PostgreSQL, Elasticsearch) to manage data and search for the right products based on user requests.

[0149] Machine learning models

[0150] The server updates the machine learning model based on user feedback to improve the accuracy of the suggestions. This model is trained using algorithms such as Scikit-learn and TensorFlow. The feedback data is used to train a new model, which is then reflected in the next suggestions.

[0151] Specific examples

[0152] For example, suppose a user uses a device to input "I want a gadget that's popular these days." The device sends this input information in JSON format to the server. The server analyzes the received input data using a natural language processing module and extracts key keywords. Next, it retrieves past purchase history from the user profile database and generates a search query. It searches for relevant products in the product database and generates an optimal suggestion message. This message is sent to the device, and a message is displayed to the user asking, "How about these smart glasses?" When the user presses the "I like it" button, that feedback is sent to the server and stored in the database. The server uses this feedback to update the machine learning model and improve the accuracy of the next suggestion.

[0153] Prompt Sentence Examples

[0154] "Please recommend the latest trending gadgets based on the user's preferences."

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

[0156] Step 1:

[0157] A user uses a terminal to input a query in natural language.

[0158] Specifically, the user enters "I want a gadget that's popular these days" into the application's text input field. This input is temporarily stored in the device's internal memory.

[0159] Input: A natural language query entered by a user into a text input field (e.g., "I want the latest trending gadgets").

[0160] Output: User input data temporarily stored on the device.

[0161] Step 2:

[0162] The terminal transmits the user's input data to the server.

[0163] Specifically, the terminal uses the JavaScript fetch API to issue an HTTP POST request that sends the input data in JSON format.

[0164] Input: User input data (JSON format) temporarily saved on the device.

[0165] Output: User-entered data sent to the server.

[0166] Step 3:

[0167] The server receives the user's inquiry data and passes the data to the natural language processing module.

[0168] Specifically, the server parses the received JSON data and uses Python's NLTK or SpaCy to analyze the text and extract key keywords.

[0169] Input: User-entered data sent to the server (JSON format).

[0170] Output: Parsed keywords (e.g. "trend", "gadget").

[0171] Step 4:

[0172] The server retrieves past behavioral history from a user profile database.

[0173] Specifically, the server executes an SQL query (e.g., "SELECT FROM user_profiles WHERE user_id = '12345'") to retrieve the user's profile information, including past purchase data and search history.

[0174] Input: Parsed keywords, user ID.

[0175] Output: Retrieved user profile information (purchase data, search history).

[0176] Step 5:

[0177] The server searches for the most suitable product from the product database.

[0178] Specifically, the server executes an SQL query (e.g., "SELECT FROM products WHERE category = 'gadgets' AND trending = 1") to retrieve product information.

[0179] Input: Parsed keywords, user profile information.

[0180] Output: Searched product data (product name, price, reviews, etc.).

[0181] Step 6:

[0182] The server generates a proposal message.

[0183] Specifically, the server uses a natural language generation algorithm to construct a suggestion message (e.g., "How about these smart glasses?").

[0184] Input: Searched product data.

[0185] Output: The generated proposal message.

[0186] Step 7:

[0187] The terminal receives the proposal message from the server and displays it to the user.

[0188] Specifically, the device parses the received JSON data and renders the proposed message in HTML format, which the user can view on the application screen.

[0189] Input: The proposal message sent by the server (in JSON format).

[0190] Output: The suggestion message that is displayed to the user.

[0191] Step 8:

[0192] The user provides feedback on the proposed product.

[0193] Specifically, the user clicks a button such as "I like it" or "I want to see more suggestions." The device records this feedback.

[0194] Input: User feedback input (click operation).

[0195] Output: Feedback data recorded on the device.

[0196] Step 9:

[0197] The terminal transmits the user's feedback data to the server.

[0198] Specifically, the device again uses the JavaScript fetch API to send feedback data in JSON format.

[0199] Input: Recorded feedback data (JSON format).

[0200] Output: Feedback data sent to the server.

[0201] Step 10:

[0202] The server receives the feedback data and updates the machine learning model.

[0203] Specifically, the server stores the feedback data in a database, inputs it as new training data into the machine learning model, and retrains the model using an algorithm (e.g., Scikit-learn or TensorFlow).

[0204] Input: Feedback data sent to the server, existing training data.

[0205] Output: An updated machine learning model.

[0206] (Application example 1)

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

[0208] Conventional systems have difficulty in suggesting optimal products in response to users' vague natural language queries. Furthermore, they lack the precision to quickly suggest appropriate products based on users' preferences and past purchase history. As a result, users have to spend a lot of time searching for products, making the purchasing process inefficient.

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

[0210] In this invention, the server includes: means for accepting an inquiry in ambiguous natural language from a user; means including a natural language processing module for analyzing the inquiry and identifying the user's intention; means for retrieving the user's past purchase history and browsing history from a database and analyzing the user's preferences; means for searching for optimal products and generating suggested candidates based on the analysis results; means including a smartphone application for presenting the suggested candidates to the user; and means for receiving feedback from the user and updating a machine learning model to improve suggestion accuracy. This enables efficient and accurate product suggestions in response to ambiguous user inquiries.

[0211] The "means for accepting an inquiry in an ambiguous natural language from a user" is an interface for receiving an ambiguous request input by a user in a natural language.

[0212] The "means including a natural language processing module for analyzing the query and identifying the user's intention" is a module equipped with a natural language processing function for analyzing the user's query and understanding its intention.

[0213] The "means for acquiring the user's past purchase history and browsing history from a database and analyzing the user's preferences" is a function for acquiring the user's past behavioral data and estimating the user's preferences based on that data.

[0214] "Means for searching for optimal products and generating suggested candidates based on the analysis results" refers to a function for searching for related products and generating suggested candidates based on the analysis results of the natural language processing module and the user's preferences.

[0215] The "means including a smartphone application for presenting the proposal candidates to the user" is an application that runs on a smartphone for presenting the generated proposal candidates to the user.

[0216] "Means for receiving feedback from users and updating the machine learning model to improve the accuracy of suggestions" refers to a function for receiving feedback from users and updating the machine learning algorithm to improve the accuracy of suggestions based on that feedback.

[0217] This invention is a system for suggesting optimal products in response to a user's inquiry in ambiguous natural language. The system interacts with the user via a smartphone application, identifies the user's intent, and suggests products that are in line with that intent.

[0218] System Configuration

[0219] In an embodiment of the present invention, the system comprises the following components:

[0220] 1. Smartphone application

[0221] It provides an interface for users to input queries in natural language. For example, a user might input, "I want a smartphone that's popular these days."

[0222] 2. Backend Server

[0223] It acts as a central point for receiving and parsing user input. This server does the following:

[0224] The natural language processing module analyzes the user's ambiguous queries and identifies their intent.

[0225] The user's past purchase history and browsing history are obtained from the database and the user's preferences are analyzed.

[0226] The optimal product is searched for in the product database and proposal candidates are generated.

[0227] The proposed candidates are sent to a smartphone application and presented to the user.

[0228] Receive user feedback and update the machine learning model to improve the accuracy of suggestions.

[0229] Software and hardware used

[0230] Natural Language Processing Module: Transformers Library (Hugging Face)

[0231] Database: SQLite

[0232] Backend server: Flask (Python web framework)

[0233] Frontend: React Native (smartphone application)

[0234] System operation explanation

[0235] 1. Inquiry reception and analysis

[0236] A user inputs a vague query such as "I want a smartphone that is popular these days" through a smartphone application. This input is sent to the server.

[0237] The server sends the received query to a natural language processing module, tokenizes the input sentence, and obtains the analysis result.

[0238] 2. User profile acquisition and preference analysis

[0239] The server retrieves the user's past purchase history and browsing history from the database and analyzes the user's preferences.

[0240] 3. Product search and candidate suggestion generation

[0241] The server searches for the most suitable product from the product database based on the analysis results and the user's preference data.

[0242] Suggestion candidates are generated, sent to a smartphone application, and presented to the user.

[0243] 4. Receiving feedback and updating the machine learning model

[0244] The system receives user feedback on the presented suggested products, such as "I like this product" or "I'd like to see other options."

[0245] The server uses this feedback to update the machine learning model and improve the accuracy of its next proposal.

[0246] Specific examples

[0247] For example, a user opens a smartphone application and types, "I want a smartphone that's popular these days." The server receives this and analyzes it using a natural language processing module. The analysis results in the keywords "smartphone" and "latest trends." The server then retrieves the user's purchase history and browsing history from a database to understand the user's preferences. Based on these results, the most suitable smartphone is searched for and suggested from a product database. The suggestion is displayed to the user via the smartphone application, asking, "How about this new smartphone?" The user provides feedback on the presented product, and the results lead to improved suggestion accuracy next time.

[0248] Example prompt for a generative AI model:

[0249] "What are some popular smartphones? Please choose one taking into account the latest trends."

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

[0251] Step 1:

[0252] The user launches the smartphone application and enters a query.

[0253] Input: A user types a vague natural language query into a text field in an application, such as "I want a smartphone that's popular these days."

[0254] Output: The user's input text.

[0255] Specific actions: The user opens the application on their smartphone, enters a query in the text field, and presses the send button.

[0256] Step 2:

[0257] The terminal sends the user's input to the server.

[0258] Input: The text entered by the user.

[0259] Output: The user's input text as received by the server.

[0260] Specific operation: The terminal sends the entered text to the server as an HTTP request.

[0261] Step 3:

[0262] The server uses a natural language processing module to analyze the user's ambiguous query.

[0263] Input: The text entered by the user.

[0264] Output: Analysis results (e.g. keywords "smartphone" and "recent trends").

[0265] Specific operation: The server passes the received text to the natural language processing module, performs text analysis, and extracts keywords.

[0266] Step 4:

[0267] The server retrieves the user's past purchase history and browsing history from the database and analyzes their preferences.

[0268] Input: User's ID (e.g. 12345).

[0269] Output: Data on the user's past purchase and browsing history (e.g. "smartphone", "high-resolution camera", etc.).

[0270] Specific operation: The server executes a database query based on the user ID to obtain the user's purchase history and browsing history.

[0271] Step 5:

[0272] The server searches the product database for the most suitable product based on the analysis results and preference data.

[0273] Input: Analysis results (keywords) and user preference data.

[0274] Output: A list of the best products (e.g. "Latest high-resolution camera smartphones").

[0275] Specific operation: The server queries the product database using keywords and user preferences to list relevant products.

[0276] Step 6:

[0277] The server generates proposal candidates and sends them to the smartphone application.

[0278] Input: A list of best products.

[0279] Output: Suggestions to show to the user (e.g., "How about this latest smartphone?").

[0280] Specific operation: The server obtains detailed product data, generates a proposal message, and then sends it to the smartphone application.

[0281] Step 7:

[0282] The terminal presents the received proposal candidates to the user.

[0283] Input: A proposal candidate message.

[0284] Output: The proposal screen that is displayed to the user.

[0285] Specific operation: The terminal analyzes the proposal message received from the server and displays it on the user's screen.

[0286] Step 8:

[0287] The user provides feedback on the proposed product.

[0288] Input: User feedback (e.g., "I like this product" or "I'd like to see more suggestions").

[0289] Output: User feedback data.

[0290] Specific operation: The user inputs feedback about the presented product and sends it to the server via the terminal.

[0291] Step 9:

[0292] The server receives user feedback and updates the machine learning model.

[0293] Input: User feedback data.

[0294] Output: An updated machine learning model.

[0295] Specific operation: The server retrains the machine learning model based on the received feedback to improve the accuracy of the suggestions.

[0296] The above are the specific processing steps of the system.

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

[0298] The CuraAI system of this invention is a system that suggests optimal products in response to ambiguous inquiries from users in natural language. Furthermore, by combining it with an emotion engine that recognizes user emotions, it achieves more accurate and personalized product suggestions. The purpose of this invention is to improve the process by which users efficiently search for and purchase products.

[0299] System Configuration

[0300] The CuraAI system consists of the following main components:

[0301] 1. User Interface (Terminal)

[0302] 2. Backend Processing Server (Server)

[0303] 3. Natural Language Processing Module

[0304] 4. User Profile Database

[0305] 5. Product Database

[0306] 6. Machine Learning Models

[0307] 7. Emotion Engine

[0308] User Interface (Terminal)

[0309] The terminal provides an interface for users to input queries in natural language. Users can input vague requests such as "I want the latest trendy gadget" through the application. The terminal is responsible for sending this input and emotion engine data to the server.

[0310] Backend processing server (server)

[0311] The server plays a central role in receiving and analyzing user input and emotion data. Specifically, the server performs the following processes:

[0312] The user's vague query is sent to a natural language processing module for analysis.

[0313] Obtain past purchase and browsing history from the user's profile database.

[0314] Search for the best product from a product database based on the user's preferences.

[0315] Suggestions are generated and messages are constructed to present to the user.

[0316] Receive user feedback and sentiment data to update machine learning models.

[0317] Natural Language Processing Module

[0318] The natural language processing module is a software component that analyzes vague user queries sent from the server and identifies their intent. For example, if a query says, "I want a gadget that's popular these days," the module analyzes the keywords "gadget" and "popular" to identify the appropriate product category.

[0319] User Profile Database

[0320] The user profile database stores information about each user's past purchase history, browsing history, and preferences. This database is used to provide personalized product recommendations for each user.

[0321] Product database

[0322] The product database stores information on all products handled within the system, including detailed information such as product name, price, reviews, related products, etc. The server searches this database for the most suitable product based on the user's preferences and the analysis results from the natural language processing module.

[0323] Machine learning models

[0324] The machine learning model is a learning algorithm and its implementation that improves the accuracy of suggestions based on user feedback and emotional data. The server inputs user feedback (e.g., "I like it" or "I want to see other suggestions") and emotional data into the machine learning model to improve the accuracy of the next suggestion.

[0325] Emotion Engine

[0326] The emotion engine is a software component that recognizes emotions during natural language input from users. The emotion engine analyzes the user's text and voice input to identify their emotional state (e.g., happy, sad, excited, etc.). The server uses the recognized emotion data to optimize product recommendations.

[0327] Specific examples

[0328] For example, suppose a user uses a device to input, "I want a gadget that's popular these days." The device sends this input information and emotion data to the server. The server then sends the received input to a natural language processing module and receives the analysis results. It then retrieves the user's past purchase history from the user's profile database and analyzes their preferences. Next, it identifies "popular gadgets these days" from the product database and generates several suggestion candidates. Based on the output of the emotion engine, it adjusts the priority of the suggestion candidates and the wording of the message. It displays a suggestion message on the device (for example, "How about these smart glasses? They're a very popular product") and receives feedback and emotion data from the user. The server receives this feedback and emotion data and updates the machine learning model. This makes the next suggestion even more accurate.

[0329] The processing flow will be explained below.

[0330] Step 1:

[0331] Device: The user launches a CuraAI-enabled shopping app and is presented with an interface where they can type, "I want a gadget that's popular these days."

[0332] Step 2:

[0333] User: Type into the app in natural language, "I want a gadget that's popular these days."

[0334] Step 3:

[0335] Terminal: Along with user input, emotions are evaluated from voice and facial expressions, and emotional data is obtained through the emotion engine.

[0336] Step 4:

[0337] Terminal: Sends user input and emotion data to the server.

[0338] Step 5:

[0339] Server: Receives input and sends it to the natural language processing module to start the analysis.

[0340] Step 6:

[0341] Natural Language Processing module: Tokenizes the user query, extracts the keywords "gadget" and "trending" and identifies its meaning and intent.

[0342] Step 7:

[0343] Server: Receives the analysis results of the natural language processing module and clarifies the user's intent.

[0344] Step 8:

[0345] Server: Obtains the user's past purchase history and browsing history from the user profile database.

[0346] Step 9:

[0347] Server: Based on the acquired data, analyzes the user's preferences and identifies suitable product categories.

[0348] Step 10:

[0349] Server: Searches for relevant gadgets from the product database based on the user's preferences and the analysis results of the natural language processing module.

[0350] Step 11:

[0351] Server: Generates proposal candidates based on the acquired product information.

[0352] Step 12:

[0353] Server: Adjusts the priority of proposal candidates and message expressions based on the emotion data from the emotion engine.

[0354] Step 13:

[0355] Server: Generates a suggestion message that reflects the emotional data (e.g., "How about these smart glasses? Many people like them.") and sends it to the device.

[0356] Step 14:

[0357] Terminal: Displays suggested product information to the user.

[0358] Step 15:

[0359] User: Select feedback for the suggested product, such as "I like it" or "I'd like to see more options."

[0360] Step 16:

[0361] Terminal: Sends user feedback and re-evaluated emotion data to the server.

[0362] Step 17:

[0363] Server: Receives feedback and emotion data and stores it in a user profile database.

[0364] Step 18:

[0365] Server: Inputs feedback and sentiment data into the machine learning model and trains it to improve the accuracy of the next suggestion.

[0366] Step 19:

[0367] Server: Updates the system and prepares it for the next user session.

[0368] Example 2

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

[0370] With conventional systems, it was difficult to accurately identify the user's intent and make appropriate product suggestions when they made inquiries using ambiguous natural language. Furthermore, because suggestions were made without taking the user's emotions into consideration, the accuracy of personalized suggestions was low. This made it difficult for users to quickly and efficiently find the optimal product, resulting in a complicated purchasing process.

[0371] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.

[0372] In this invention, the server includes: means for accepting an inquiry from a user in ambiguous natural language; means including a natural language processing module for analyzing the inquiry and identifying the user's intention; means for retrieving the user's past purchase history and browsing history from a database and analyzing the user's preferences; means for searching for optimal products and generating candidate suggestions based on the analysis results; means including an emotion engine for recognizing the user's emotions and reflecting them in the content of suggestions; means for presenting the candidate suggestions to the user; and means for receiving feedback from the user and updating a machine learning model to improve suggestion accuracy. This makes it possible to accurately identify the user's intention in response to a user's ambiguous natural language inquiry and to make personalized product suggestions that take emotions into consideration.

[0373] A "user" is a person who uses the system to make an inquiry.

[0374] An "inquiry in ambiguous natural language" is a user's inquiry using natural language that includes non-specific expressions or unclear requests.

[0375] A "natural language processing module" is a software component that analyzes input natural language text and identifies its intent.

[0376] "User preferences" is information that indicates the user's tastes and areas of interest, and is analyzed based on the user's past purchase history and browsing history.

[0377] The "emotion engine" is a software component that analyzes the user's emotional state at the time of input and outputs the results.

[0378] "Suggestion candidates" are candidates for products or services that are generated based on the analysis results and are proposed to the user.

[0379] "Suggestion accuracy" is an indicator that indicates the accuracy and appropriateness of the suggestions that the system makes to the user.

[0380] A "machine learning model" is an algorithm and its implementation that self-learns based on data and improves the accuracy of its next proposal.

[0381] A "database" is a collection of related data stored in a structured manner, including user profiles, product information, and so on.

[0382] The "analysis result" is information about the meaning and intent of the user's inquiry analyzed by the natural language processing module.

[0383] The present invention is a system for responding to inquiries made by users in vague natural language and proposing optimal products. Specific embodiments of the system are described below.

[0384] First, the system of the present invention includes a "user interface (terminal)," a "backend processing server (server)," a "natural language processing module," a "user profile database," a "product database," a "machine learning model," and an "emotion engine."

[0385] User Interface (Terminal)

[0386] The user can use this terminal to input queries in natural language, for example, vague requests such as "I want a gadget that's popular these days." The terminal receives the user's input and emotion data from the emotion engine, and transmits them to the server.

[0387] Backend processing server (server)

[0388] The server receives the user's input data and emotion data sent from the terminal and performs the following processing.

[0389] The user's vague query is sent to a natural language processing module for analysis.

[0390] Obtain past purchase and browsing history from the user profile database.

[0391] Search for the best product from a product database based on the user's preferences.

[0392] Suggestions are generated and messages are constructed to present to the user.

[0393] Receive user feedback and sentiment data to update machine learning models.

[0394] Natural Language Processing Module

[0395] The natural language processing module analyzes vague user queries and identifies their intent. For example, this module extracts the keywords "gadget" and "recent trend" from a query such as "I want a gadget that's popular these days."

[0396] User Profile Database

[0397] The user profile database stores information about each user's past purchase history, browsing history, and preferences. This information is used to provide personalized product suggestions for each user.

[0398] Product database

[0399] The product database stores information on all products handled within the system, including detailed information such as product names, prices, reviews, and related products. The server searches this database for the most suitable product based on the analysis results of the natural language processing module and the user's preferences.

[0400] Machine learning models

[0401] The machine learning model is a learning algorithm and its implementation that improves the accuracy of suggestions based on user feedback and emotional data. The server inputs the received feedback and emotional data into the machine learning model to improve the accuracy of the next suggestion.

[0402] Emotion Engine

[0403] The emotion engine is a software component that recognizes emotions in a user's natural language input. The emotion engine analyzes the user's text input and identifies their emotional state. The emotion data is used by the server to optimize product suggestions.

[0404] Specific examples

[0405] For example, suppose a user uses a device to input, "I want a gadget that's popular these days." The device sends this input information and emotion data to the server. The server then sends the received input to a natural language processing module and receives the analysis results. It then retrieves the user's past purchase history from the user's profile database and analyzes their preferences. Next, it identifies "popular gadgets these days" from the product database and generates several suggestion candidates. Based on the output of the emotion engine, it adjusts the priority of the suggestion candidates and the wording of the message. It displays a suggestion message on the device (for example, "How about these smart glasses? They're a very popular product") and receives feedback and emotion data from the user. The server receives this feedback and emotion data and updates the machine learning model. This makes the next suggestion even more accurate.

[0406] Prompt Sentence Examples

[0407] "I want the latest gadget. I'm emotionally excited."

[0408] In this way, personalized product suggestions that take the user's emotions into consideration are realized.

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

[0410] Step 1:

[0411] A user uses a device to input a query in natural language. An example of an input is a vague request such as "I want a gadget that's popular these days." The user's input is sent to the device, which stores it for subsequent processing.

[0412] Input: User's natural language query

[0413] Output: User input data stored on the device

[0414] Step 2:

[0415] The device sends the user's input to the emotion engine to obtain emotion data. In this process, the emotion engine analyzes the emotion the user is feeling when inputting (e.g., excited, calm, etc.). The emotion engine performs text analysis to identify the emotional state.

[0416] Input: User-entered data

[0417] Output: Emotion data identified by the emotion engine

[0418] Step 3:

[0419] The terminal transmits the user's input data and emotion data to the back-end processing server, which allows the server to start the subsequent analysis process.

[0420] Input: User input data and emotion data

[0421] Output: Data sent to the server

[0422] Step 4:

[0423] The server sends the received input data to the natural language processing module for analysis. The natural language processing module analyzes the meaning of the input text and extracts keywords and important information. For example, from the text "I want a gadget that's popular these days," the keywords "gadget" and "recently popular" are extracted.

[0424] Input: User-entered data

[0425] Output: Parsed keywords and intent information

[0426] Step 5:

[0427] The server retrieves the user's past purchase history and browsing history from the user profile database, and analyzes the user's preferences based on this information.

[0428] Input: Parsed keywords and intent, user ID

[0429] Output: User preference information

[0430] Step 6:

[0431] The server searches for the most suitable product based on the analysis results and the user's preferences from the product database, which contains detailed product information, and extracts the relevant products from there.

[0432] Input: Analyzed keywords, user preference information

[0433] Output: List of target products

[0434] Step 7:

[0435] The server generates proposal candidates based on the generated target product list and emotion data, and creates messages to display on the user interface. The expression and priority of the proposal messages are adjusted based on the output of the emotion engine.

[0436] Input: Target product list, emotion data

[0437] Output: Proposal message

[0438] Step 8:

[0439] The terminal displays the proposal message received from the server to the user, who then checks the proposal message and provides feedback on its contents.

[0440] Input: Proposal message

[0441] Output: User feedback

[0442] Step 9:

[0443] The server inputs user feedback and emotion data into the machine learning model and updates the model, improving the accuracy of future suggestions.

[0444] Input: User feedback, emotional data

[0445] Output: Updated machine learning model

[0446] Through the above processing steps, optimal product suggestions that take into account the user's feelings are realized in response to the user's vague inquiries.

[0447] (Application example 2)

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

[0449] When users search for products using ambiguous natural language, they often have difficulty finding the right product. Furthermore, personalized recommendations based on the user's emotional state, past purchase history, and preferences are rare. Especially when it comes to product presentation in virtual spaces, more advanced technologies are needed to enrich the user experience.

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

[0451] In this invention, the server includes: means for accepting a user's inquiry in ambiguous natural language; means including a natural language processing module for analyzing the inquiry and identifying the user's intention; means for retrieving the user's past purchase history and browsing history from a database and analyzing the user's preferences; means for searching for optimal products and generating candidate suggestions based on the analysis results; means for presenting the candidate suggestions to the user; means for receiving feedback from the user and updating a machine learning model to improve suggestion accuracy; means for recognizing the user's emotions using an emotion engine and reflecting them in product suggestions; and display means for presenting products in a virtual space. This enables the user to receive personalized, optimal product suggestions based on their ambiguous inquiry in a virtual space.

[0452] "Ambiguous natural language" refers to a language that is composed of unclear, abstract expressions.

[0453] "Analyzing a query" means interpreting the intent and meaning of the natural language expression entered by the user and converting it into an appropriate action.

[0454] A "natural language processing module" is a software component that analyzes natural language input from a user and understands its meaning.

[0455] "Analyzing user preferences" means identifying products and services that a user prefers based on the user's past behavioral data and profile information.

[0456] The "optimal product" refers to the product that best matches the user's needs and preferences.

[0457] "Generating proposal candidates" means creating a list of products and services to present to the user based on the user's inquiry and feelings.

[0458] An "emotion engine" is a software component that identifies an emotional state from user input (text or voice).

[0459] "Virtual space" refers to an imaginary three-dimensional space generated by a computer system that transcends the physical constraints of the real world.

[0460] "Display means" refers to an interface for visually displaying information on the screen of a system or device.

[0461] A "machine learning model" is a mathematical model that uses data to train an algorithm and improve the accuracy of its recommendations.

[0462] "Feedback" refers to the opinions, evaluations, and reactions that users provide to the system.

[0463] The CuraAI system of this invention is a system that personalizes and suggests optimal products based on vague inquiries in natural language from users. This system consists of the following main hardware and software components:

[0464] Hardware and Software

[0465] Hardware

[0466] Head-mounted displays (e.g., general-purpose VR headsets)

[0467] Smartphone

[0468] software

[0469] Cloud services (e.g., general-purpose cloud hosting services)

[0470] Natural language processing modules (e.g., general-purpose natural language processing APIs)

[0471] Sentiment engine (e.g., general-purpose sentiment analysis API)

[0472] Databases (product database, user profile database)

[0473] Machine learning models (e.g., general-purpose machine learning libraries)

[0474] System Operation Overview

[0475] Terminal

[0476] The user wears a head-mounted display and logs into the virtual space. The device transmits the user's voice inquiry and emotion data to the server in real time.

[0477] server

[0478] The server analyzes the received natural language input and emotional data. It uses a natural language processing module to identify the user's intent and an emotional engine to recognize their emotional state. It then retrieves the user's past purchase history and preferences from a profile database and searches for suitable products from a product database. It then presents the generated suggestions to the user in a virtual space.

[0479] Data processing and calculation

[0480] Voice input and emotional data collection

[0481] The user's voice input and emotional data are sent from the head-mounted display to the server.

[0482] Natural Language Analysis and Emotion Recognition

[0483] The natural language processing module converts voice data into text and analyzes its intent, while the emotion engine identifies the emotional state from the input text.

[0484] Obtaining and analyzing user profile and product data

[0485] The system obtains preference information and past purchase history from the user's profile database, and searches for related products from the product database.

[0486] Generate and present product suggestions

[0487] Based on the user's preferences and emotional data, the most suitable products are selected and displayed in a virtual space.

[0488] Specific examples

[0489] 1. Hardware and Software

[0490] Hardware: General-purpose VR headset

[0491] Software: General-purpose cloud hosting service, general-purpose natural language processing API, general-purpose sentiment analysis API, product database, user profile database, general-purpose machine learning library

[0492] 2. Data Flow and Operations

[0493] Voice input: "Inside a generic VR headset, say, 'I want the latest trending gadget.'"

[0494] Output of analytical process results and product proposals

[0495] 3. Example prompts

[0496] Input: I want the latest trending gadgets

[0497] Task: Extract the main intent and potential categories for recommending products.

[0498] This system allows users to receive product suggestions based on their unique preferences and emotions through natural conversations in a virtual space. This process allows users to enjoy a more satisfying shopping experience.

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

[0500] Step 1:

[0501] The user wears a head-mounted display and logs into the virtual space. The user makes a voice inquiry in natural language, saying, "I want a gadget that's popular these days." The device collects the voice data and uses an emotion engine to analyze the user's emotional state (e.g., neutral, excited, amused, etc.). The voice data and emotion data are sent to the server in real time.

[0502] Step 2:

[0503] The server sends the voice data received from the device to a natural language processing module, which converts it into text. This text is then analyzed to identify the user's intent. For example, from the text "I want a gadget that's popular these days," the keywords "gadget" and "currently popular" are extracted. Based on this analysis, an appropriate search category is determined.

[0504] Step 3:

[0505] The server retrieves past purchase history and preference information from the user's profile database. This information is used to identify the user's preferences and interests based on the user's past purchases and browsing history. For example, if the user is particularly interested in gadgets, related products will be prioritized.

[0506] Step 4:

[0507] The server searches the product database for the most suitable products based on the user's preferences and analysis results. Based on identified keywords (e.g., "gadgets" or "current trends"), the server narrows down the search to highly relevant products. The server then generates a list of these products and compiles them as candidate suggestions.

[0508] Step 5:

[0509] The server uses the output of the emotion engine to prioritize the proposed products. For example, if it determines that the user is excited, it will emphasize the attractive features of the proposed product based on the user's level of excitement. It also adjusts the wording of the message. For example, it might use phrases such as, "This new gadget is very popular these days!"

[0510] Step 6:

[0511] The server sends the generated proposal candidates to the device and presents them to the user in the virtual space. The user checks the presented product information and selects the product they are interested in. The device then sends the user's selection and feedback to the server in real time.

[0512] Step 7:

[0513] The server receives user feedback and sentiment data and updates the machine learning model to improve the accuracy of future suggestions. For example, if a user expresses a strong interest in a particular product, products in that category will be prioritized in future suggestions.

[0514] This process allows users to receive relevant and personalized product suggestions even when they make vague natural language inquiries.

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

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

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

[0518] [Second embodiment]

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

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

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

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

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

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

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

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

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

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

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

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

[0531] The CuraAI system of this invention is a system that suggests optimal products in response to ambiguous inquiries from users in natural language. This system aims to significantly improve the process by which users efficiently search for and purchase products.

[0532] System Configuration

[0533] The CuraAI system consists of the following main components:

[0534] 1. User Interface (Terminal)

[0535] 2. Backend Processing Server (Server)

[0536] 3. Natural Language Processing Module

[0537] 4. User Profile Database

[0538] 5. Product Database

[0539] 6. Machine Learning Models

[0540] User Interface (Terminal)

[0541] The terminal provides an interface for users to input queries in natural language. Users can input vague requests through the application, such as "I want the latest trending gadgets." The terminal is responsible for transmitting this input to the server.

[0542] Backend processing server (server)

[0543] The server plays a central role in receiving and analyzing user input. Specifically, the server:

[0544] The user's vague query is sent to a natural language processing module for analysis.

[0545] Obtain past purchase and browsing history from the user's profile database.

[0546] Search for the best product from a product database based on the user's preferences.

[0547] Suggestions are generated and messages are constructed to present to the user.

[0548] Receive user feedback and update your machine learning models.

[0549] Natural Language Processing Module

[0550] The natural language processing module is a software component that analyzes vague user queries sent from the server and identifies their intent. For example, if a query says, "I want a gadget that's popular these days," the module analyzes the keywords "gadget" and "popular these days" to identify the appropriate product category.

[0551] User Profile Database

[0552] The user profile database stores information about each user's past purchase history, browsing history, and preferences. This database is used to provide personalized product recommendations for each user.

[0553] Product database

[0554] The product database stores information on all products handled within the system, including detailed information such as product name, price, reviews, related products, etc. The server searches this database for the most suitable product based on the user's preferences and the analysis results from the natural language processing module.

[0555] Machine learning models

[0556] The machine learning model is a learning algorithm and its implementation that improves the accuracy of suggestions based on user feedback. The server inputs user feedback (e.g., "I like it," "I want to see other suggestions," etc.) into the machine learning model to improve the accuracy of the next suggestion.

[0557] Specific examples

[0558] For example, suppose a user uses a device to input, "I want a gadget that's popular these days." The device sends this input information to the server. The server then sends the received input to a natural language processing module and receives the analysis results. It then retrieves the user's past purchase history from the user's profile database and analyzes their preferences. Next, it identifies "popular gadgets these days" from the product database and generates several candidate suggestions. It displays a suggestion message on the device (for example, "How about these smart glasses?") and receives feedback from the user. The server receives this feedback information and updates the machine learning model. This makes the next suggestions even more accurate.

[0559] The processing flow will be explained below.

[0560] Step 1:

[0561] Device: The user launches a CuraAI-enabled shopping app and is presented with an interface where they can type, "I want a gadget that's popular these days."

[0562] Step 2:

[0563] User: Type into the app in natural language, "I want a gadget that's popular these days."

[0564] Step 3:

[0565] Terminal: Takes user input and sends it to the server.

[0566] Step 4:

[0567] Server: Receives input and sends it to the natural language processing module to start the analysis.

[0568] Step 5:

[0569] Natural language processing module: Analyzes user queries, extracts keywords like "gadget" and "trendy," and identifies their meaning and intent.

[0570] Step 6:

[0571] Server: Receives the analysis results of the natural language processing module and clarifies the user's intent.

[0572] Step 7:

[0573] Server: Obtains the user's past purchase history and browsing history from the user profile database.

[0574] Step 8:

[0575] Server: Based on the acquired data, analyzes the user's preferences and identifies specific product categories that may interest the user.

[0576] Step 9:

[0577] Server: Searches for relevant gadgets from the product database based on the user's preferences and the analysis results of the natural language processing module.

[0578] Step 10:

[0579] Server: Generates multiple proposal candidates based on the acquired product information.

[0580] Step 11:

[0581] Server: Generates a message containing a suggestion candidate (e.g., "How about these smart glasses?") and sends it to the device.

[0582] Step 12:

[0583] Terminal: Displays suggested product information to the user.

[0584] Step 13:

[0585] User: Select feedback for the suggested product, such as "I like it" or "I'd like to see more options."

[0586] Step 14:

[0587] Terminal: Gets user feedback and sends it to the server.

[0588] Step 15:

[0589] Server: Receives feedback and stores it in a user profile database.

[0590] Step 16:

[0591] Server: Inputs the feedback information into the machine learning model and conducts training to improve the accuracy of the next proposal.

[0592] Step 17:

[0593] Server: Updates the system and prepares it for the next user session.

[0594] Example 1

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

[0596] Conventional online shopping systems have difficulty accurately understanding a user's intent and suggesting appropriate products when the user makes ambiguous inquiries in natural language. Furthermore, there are limited means for effectively using user feedback to improve the accuracy of suggestions. As a result, users often spend a lot of time before receiving a recommendation for a product that is just right for them. This invention aims to significantly improve the user's search and purchasing process by quickly and accurately suggesting optimal products in response to ambiguous inquiries in natural language.

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

[0598] In this invention, the server includes: means for accepting an ambiguous inquiry in natural language from a user; means including a natural language processing module for analyzing the inquiry and identifying the user's intention; means for acquiring the user's past behavioral history and interest information from a database and analyzing the user's preferences; means for searching for optimal products and generating suggested candidates based on the analysis results; means for presenting the suggested candidates to the user; means for receiving a response from the user and updating a machine learning model to improve suggestion accuracy; means for transmitting data from a terminal to the server; means for the server to select optimal product information from the search results and generate a suggestion message; and means for the terminal to receive the suggestion message and display it to the user. This makes it possible to make appropriate product suggestions in response to ambiguous user inquiries and further improve suggestion accuracy based on user feedback.

[0599] An "ambiguous natural language query" refers to a user inputting a vague request in natural language without providing clear and specific instructions.

[0600] A "natural language processing module" is a software component that analyzes the natural language input by the user and identifies their intent.

[0601] "Behavioral history" is data that records information about actions such as purchases and browsing that a user has performed in the past.

[0602] "Interest information" refers to information about the interests and preferences that a user has previously shown.

[0603] A "database" is an information system for efficiently managing and searching large amounts of data.

[0604] "Preferences" refers to information that reflects a user's preferences and interests.

[0605] "Suggested candidates" is a list of product candidates that are proposed to the user, generated based on the user's request and the analysis results.

[0606] "Response" refers to the feedback and actions that users take regarding the proposed products.

[0607] A "machine learning model" refers to an algorithm or its implementation that learns from data and makes predictions or classifications.

[0608] A "terminal" is an electronic device (e.g., smartphone, tablet, or PC) with which a user interacts.

[0609] A "server" is a central computer system for processing and managing data.

[0610] "Message" refers to text or information to be communicated to a user.

[0611] "Generation" is the process of creating new information or messages based on data and analytical results.

[0612] The present invention relates to a system that proposes optimal products in response to ambiguous inquiries made by users in natural language. The purpose of the present invention is to significantly improve the process by which users efficiently search for and purchase products.

[0613] System Configuration

[0614] The CuraAI system consists of the following main components:

[0615] 1. User Interface (Terminal)

[0616] 2. Backend Processing Server (Server)

[0617] 3. Natural Language Processing Module

[0618] 4. User Profile Database

[0619] 5. Product Database

[0620] 6. Machine Learning Models

[0621] User Interface (Terminal)

[0622] The terminal provides an interface for users to input queries in natural language. Users can input vague requests such as "I want the latest trending gadgets" through the application. The terminal is responsible for sending this input to the server. The specific software used is an application built with HTML and JavaScript. After the user has completed the input, the application prepares the data in JSON format and sends it to the server using an HTTP POST request.

[0623] Backend processing server (server)

[0624] The server plays a central role in receiving and parsing user input. Its responsibilities are to:

[0625] 1. Input Analysis

[0626] The server passes the user's input data to a natural language processing module and receives the analysis results, which uses Python's NLTK or SpaCy to parse the text and extract key keywords.

[0627] 2. Data Acquisition

[0628] The server uses SQL queries or a NoSQL database (e.g., MongoDB) to retrieve past purchase and browsing history from a user profile database, thereby understanding the user's preferences.

[0629] 3. Product Search

[0630] Based on the user profile and keywords, the server searches for the most suitable products from a product database, which contains details such as product names, prices, reviews, etc. For example, the server executes an SQL query to search for "the most popular gadgets these days."

[0631] 4. Proposal Message Generation

[0632] The server selects the most suitable product information from the search results and generates a message to suggest to the user, using a natural language generation (NLG) algorithm to construct a message such as, "How about these smart glasses?"

[0633] 5. Feedback Processing

[0634] The server receives feedback from users and stores it in a database, which is used to update the machine learning model.

[0635] Natural Language Processing Module

[0636] The natural language processing module is a software component that analyzes vague user queries sent from the server and identifies their intent. For example, it uses Python's NLTK and SpaCy to analyze text and extract the keywords "trending" and "gadget" from a query such as "I want a gadget that's popular these days."

[0637] User Profile Database

[0638] The user profile database stores information about each user's past purchase history, browsing history, and preferences. It is built using SQL or NoSQL database technology (e.g., MySQL, MongoDB), allowing for efficient information retrieval. This information is used to make personalized product suggestions for each user.

[0639] Product database

[0640] The product database stores all product information (e.g., product name, price, reviews, related products).

[0641] It uses SQL or NoSQL databases (e.g. PostgreSQL, Elasticsearch) to manage data and search for the right products based on user requests.

[0642] Machine learning models

[0643] The server updates the machine learning model based on user feedback to improve the accuracy of the suggestions. This model is trained using algorithms such as Scikit-learn and TensorFlow. The feedback data is used to train a new model, which is then reflected in the next suggestions.

[0644] Specific examples

[0645] For example, suppose a user uses a device to input "I want a gadget that's popular these days." The device sends this input information in JSON format to the server. The server analyzes the received input data using a natural language processing module and extracts key keywords. Next, it retrieves past purchase history from the user profile database and generates a search query. It searches for relevant products in the product database and generates an optimal suggestion message. This message is sent to the device, and a message is displayed to the user asking, "How about these smart glasses?" When the user presses the "I like it" button, that feedback is sent to the server and stored in the database. The server uses this feedback to update the machine learning model and improve the accuracy of the next suggestion.

[0646] Prompt Sentence Examples

[0647] "Please recommend the latest trending gadgets based on the user's preferences."

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

[0649] Step 1:

[0650] A user uses a terminal to input a query in natural language.

[0651] Specifically, the user enters "I want a gadget that's popular these days" into the application's text input field. This input is temporarily stored in the device's internal memory.

[0652] Input: A natural language query entered by a user into a text input field (e.g., "I want the latest trending gadgets").

[0653] Output: User input data temporarily stored on the device.

[0654] Step 2:

[0655] The terminal transmits the user's input data to the server.

[0656] Specifically, the terminal uses the JavaScript fetch API to issue an HTTP POST request that sends the input data in JSON format.

[0657] Input: User input data (JSON format) temporarily saved on the device.

[0658] Output: User-entered data sent to the server.

[0659] Step 3:

[0660] The server receives the user's inquiry data and passes the data to the natural language processing module.

[0661] Specifically, the server parses the received JSON data and uses Python's NLTK or SpaCy to analyze the text and extract key keywords.

[0662] Input: User-entered data sent to the server (JSON format).

[0663] Output: Parsed keywords (e.g. "trend", "gadget").

[0664] Step 4:

[0665] The server retrieves past behavioral history from a user profile database.

[0666] Specifically, the server executes an SQL query (e.g., "SELECT FROM user_profiles WHERE user_id = '12345'") to retrieve the user's profile information, including past purchase data and search history.

[0667] Input: Parsed keywords, user ID.

[0668] Output: Retrieved user profile information (purchase data, search history).

[0669] Step 5:

[0670] The server searches for the most suitable product from the product database.

[0671] Specifically, the server executes an SQL query (e.g., "SELECT FROM products WHERE category = 'gadgets' AND trending = 1") to retrieve product information.

[0672] Input: Parsed keywords, user profile information.

[0673] Output: Searched product data (product name, price, reviews, etc.).

[0674] Step 6:

[0675] The server generates a proposal message.

[0676] Specifically, the server uses a natural language generation algorithm to construct a suggestion message (e.g., "How about these smart glasses?").

[0677] Input: Searched product data.

[0678] Output: The generated proposal message.

[0679] Step 7:

[0680] The terminal receives the proposal message from the server and displays it to the user.

[0681] Specifically, the device parses the received JSON data and renders the proposed message in HTML format, which the user can view on the application screen.

[0682] Input: The proposal message sent by the server (in JSON format).

[0683] Output: The suggestion message that is displayed to the user.

[0684] Step 8:

[0685] The user provides feedback on the proposed product.

[0686] Specifically, the user clicks a button such as "I like it" or "I want to see more suggestions." The device records this feedback.

[0687] Input: User feedback input (click operation).

[0688] Output: Feedback data recorded on the device.

[0689] Step 9:

[0690] The terminal transmits the user's feedback data to the server.

[0691] Specifically, the device again uses the JavaScript fetch API to send feedback data in JSON format.

[0692] Input: Recorded feedback data (JSON format).

[0693] Output: Feedback data sent to the server.

[0694] Step 10:

[0695] The server receives the feedback data and updates the machine learning model.

[0696] Specifically, the server stores the feedback data in a database, inputs it as new training data into the machine learning model, and retrains the model using an algorithm (e.g., Scikit-learn or TensorFlow).

[0697] Input: Feedback data sent to the server, existing training data.

[0698] Output: An updated machine learning model.

[0699] (Application example 1)

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

[0701] Conventional systems have difficulty in suggesting optimal products in response to users' vague natural language queries. Furthermore, they lack the precision to quickly suggest appropriate products based on users' preferences and past purchase history. As a result, users have to spend a lot of time searching for products, making the purchasing process inefficient.

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

[0703] In this invention, the server includes: means for accepting an inquiry in ambiguous natural language from a user; means including a natural language processing module for analyzing the inquiry and identifying the user's intention; means for retrieving the user's past purchase history and browsing history from a database and analyzing the user's preferences; means for searching for optimal products and generating suggested candidates based on the analysis results; means including a smartphone application for presenting the suggested candidates to the user; and means for receiving feedback from the user and updating a machine learning model to improve suggestion accuracy. This enables efficient and accurate product suggestions in response to ambiguous user inquiries.

[0704] The "means for accepting an inquiry in an ambiguous natural language from a user" is an interface for receiving an ambiguous request input by a user in a natural language.

[0705] The "means including a natural language processing module for analyzing the query and identifying the user's intention" is a module equipped with a natural language processing function for analyzing the user's query and understanding its intention.

[0706] The "means for acquiring the user's past purchase history and browsing history from a database and analyzing the user's preferences" is a function for acquiring the user's past behavioral data and estimating the user's preferences based on that data.

[0707] "Means for searching for optimal products and generating suggested candidates based on the analysis results" refers to a function for searching for related products and generating suggested candidates based on the analysis results of the natural language processing module and the user's preferences.

[0708] The "means including a smartphone application for presenting the proposal candidates to the user" is an application that runs on a smartphone for presenting the generated proposal candidates to the user.

[0709] "Means for receiving feedback from users and updating the machine learning model to improve the accuracy of suggestions" refers to a function for receiving feedback from users and updating the machine learning algorithm to improve the accuracy of suggestions based on that feedback.

[0710] This invention is a system for suggesting optimal products in response to a user's inquiry in ambiguous natural language. The system interacts with the user via a smartphone application, identifies the user's intent, and suggests products that are in line with that intent.

[0711] System Configuration

[0712] In an embodiment of the present invention, the system comprises the following components:

[0713] 1. Smartphone application

[0714] It provides an interface for users to input queries in natural language. For example, a user might input, "I want a smartphone that's popular these days."

[0715] 2. Backend Server

[0716] It acts as a central point for receiving and parsing user input. This server does the following:

[0717] The natural language processing module analyzes the user's ambiguous queries and identifies their intent.

[0718] The user's past purchase history and browsing history are obtained from the database and the user's preferences are analyzed.

[0719] The optimal product is searched for in the product database and proposal candidates are generated.

[0720] The proposed candidates are sent to a smartphone application and presented to the user.

[0721] Receive user feedback and update the machine learning model to improve the accuracy of suggestions.

[0722] Software and hardware used

[0723] Natural Language Processing Module: Transformers Library (Hugging Face)

[0724] Database: SQLite

[0725] Backend server: Flask (Python web framework)

[0726] Frontend: React Native (smartphone application)

[0727] System operation explanation

[0728] 1. Inquiry reception and analysis

[0729] A user inputs a vague query such as "I want a smartphone that is popular these days" through a smartphone application. This input is sent to the server.

[0730] The server sends the received query to a natural language processing module, tokenizes the input sentence, and obtains the analysis result.

[0731] 2. User profile acquisition and preference analysis

[0732] The server retrieves the user's past purchase history and browsing history from the database and analyzes the user's preferences.

[0733] 3. Product search and candidate suggestion generation

[0734] The server searches for the most suitable product from the product database based on the analysis results and the user's preference data.

[0735] Suggestion candidates are generated, sent to a smartphone application, and presented to the user.

[0736] 4. Receiving feedback and updating the machine learning model

[0737] The system receives user feedback on the presented suggested products, such as "I like this product" or "I'd like to see other options."

[0738] The server uses this feedback to update the machine learning model and improve the accuracy of its next proposal.

[0739] Specific examples

[0740] For example, a user opens a smartphone application and types, "I want a smartphone that's popular these days." The server receives this and analyzes it using a natural language processing module. The analysis results in the keywords "smartphone" and "latest trends." The server then retrieves the user's purchase history and browsing history from a database to understand the user's preferences. Based on these results, the most suitable smartphone is searched for and suggested from a product database. The suggestion is displayed to the user via the smartphone application, asking, "How about this new smartphone?" The user provides feedback on the presented product, and the results lead to improved suggestion accuracy next time.

[0741] Example prompt for a generative AI model:

[0742] "What are some popular smartphones? Please choose one taking into account the latest trends."

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

[0744] Step 1:

[0745] The user launches the smartphone application and enters a query.

[0746] Input: A user types a vague natural language query into a text field in an application, such as "I want a smartphone that's popular these days."

[0747] Output: The user's input text.

[0748] Specific actions: The user opens the application on their smartphone, enters a query in the text field, and presses the send button.

[0749] Step 2:

[0750] The terminal sends the user's input to the server.

[0751] Input: The text entered by the user.

[0752] Output: The user's input text as received by the server.

[0753] Specific operation: The terminal sends the entered text to the server as an HTTP request.

[0754] Step 3:

[0755] The server uses a natural language processing module to analyze the user's ambiguous query.

[0756] Input: The text entered by the user.

[0757] Output: Analysis results (e.g. keywords "smartphone" and "recent trends").

[0758] Specific operation: The server passes the received text to the natural language processing module, performs text analysis, and extracts keywords.

[0759] Step 4:

[0760] The server retrieves the user's past purchase history and browsing history from the database and analyzes their preferences.

[0761] Input: User's ID (e.g. 12345).

[0762] Output: Data on the user's past purchase and browsing history (e.g. "smartphone", "high-resolution camera", etc.).

[0763] Specific operation: The server executes a database query based on the user ID to obtain the user's purchase history and browsing history.

[0764] Step 5:

[0765] The server searches the product database for the most suitable product based on the analysis results and preference data.

[0766] Input: Analysis results (keywords) and user preference data.

[0767] Output: A list of the best products (e.g. "Latest high-resolution camera smartphones").

[0768] Specific operation: The server queries the product database using keywords and user preferences to list relevant products.

[0769] Step 6:

[0770] The server generates proposal candidates and sends them to the smartphone application.

[0771] Input: A list of best products.

[0772] Output: Suggestions to show to the user (e.g., "How about this latest smartphone?").

[0773] Specific operation: The server obtains detailed product data, generates a proposal message, and then sends it to the smartphone application.

[0774] Step 7:

[0775] The terminal presents the received proposal candidates to the user.

[0776] Input: A proposal candidate message.

[0777] Output: The proposal screen that is displayed to the user.

[0778] Specific operation: The terminal analyzes the proposal message received from the server and displays it on the user's screen.

[0779] Step 8:

[0780] The user provides feedback on the proposed product.

[0781] Input: User feedback (e.g., "I like this product" or "I'd like to see more suggestions").

[0782] Output: User feedback data.

[0783] Specific operation: The user inputs feedback about the presented product and sends it to the server via the terminal.

[0784] Step 9:

[0785] The server receives user feedback and updates the machine learning model.

[0786] Input: User feedback data.

[0787] Output: An updated machine learning model.

[0788] Specific operation: The server retrains the machine learning model based on the received feedback to improve the accuracy of the suggestions.

[0789] The above are the specific processing steps of the system.

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

[0791] The CuraAI system of this invention is a system that suggests optimal products in response to ambiguous inquiries from users in natural language. Furthermore, by combining it with an emotion engine that recognizes user emotions, it achieves more accurate and personalized product suggestions. The purpose of this invention is to improve the process by which users efficiently search for and purchase products.

[0792] System Configuration

[0793] The CuraAI system consists of the following main components:

[0794] 1. User Interface (Terminal)

[0795] 2. Backend Processing Server (Server)

[0796] 3. Natural Language Processing Module

[0797] 4. User Profile Database

[0798] 5. Product Database

[0799] 6. Machine Learning Models

[0800] 7. Emotion Engine

[0801] User Interface (Terminal)

[0802] The terminal provides an interface for users to input queries in natural language. Users can input vague requests such as "I want the latest trendy gadget" through the application. The terminal is responsible for sending this input and emotion engine data to the server.

[0803] Backend processing server (server)

[0804] The server plays a central role in receiving and analyzing user input and emotion data. Specifically, the server performs the following processes:

[0805] The user's vague query is sent to a natural language processing module for analysis.

[0806] Obtain past purchase and browsing history from the user's profile database.

[0807] Search for the best product from a product database based on the user's preferences.

[0808] Suggestions are generated and messages are constructed to present to the user.

[0809] Receive user feedback and sentiment data to update machine learning models.

[0810] Natural Language Processing Module

[0811] The natural language processing module is a software component that analyzes vague user queries sent from the server and identifies their intent. For example, if a query says, "I want a gadget that's popular these days," the module analyzes the keywords "gadget" and "popular" to identify the appropriate product category.

[0812] User Profile Database

[0813] The user profile database stores information about each user's past purchase history, browsing history, and preferences. This database is used to provide personalized product recommendations for each user.

[0814] Product database

[0815] The product database stores information on all products handled within the system, including detailed information such as product name, price, reviews, related products, etc. The server searches this database for the most suitable product based on the user's preferences and the analysis results from the natural language processing module.

[0816] Machine learning models

[0817] The machine learning model is a learning algorithm and its implementation that improves the accuracy of suggestions based on user feedback and emotional data. The server inputs user feedback (e.g., "I like it" or "I want to see other suggestions") and emotional data into the machine learning model to improve the accuracy of the next suggestion.

[0818] Emotion Engine

[0819] The emotion engine is a software component that recognizes emotions during natural language input from users. The emotion engine analyzes the user's text and voice input to identify their emotional state (e.g., happy, sad, excited, etc.). The server uses the recognized emotion data to optimize product recommendations.

[0820] Specific examples

[0821] For example, suppose a user uses a device to input, "I want a gadget that's popular these days." The device sends this input information and emotion data to the server. The server then sends the received input to a natural language processing module and receives the analysis results. It then retrieves the user's past purchase history from the user's profile database and analyzes their preferences. Next, it identifies "popular gadgets these days" from the product database and generates several suggestion candidates. Based on the output of the emotion engine, it adjusts the priority of the suggestion candidates and the wording of the message. It displays a suggestion message on the device (for example, "How about these smart glasses? They're a very popular product") and receives feedback and emotion data from the user. The server receives this feedback and emotion data and updates the machine learning model. This makes the next suggestion even more accurate.

[0822] The processing flow will be explained below.

[0823] Step 1:

[0824] Device: The user launches a CuraAI-enabled shopping app and is presented with an interface where they can type, "I want a gadget that's popular these days."

[0825] Step 2:

[0826] User: Type into the app in natural language, "I want a gadget that's popular these days."

[0827] Step 3:

[0828] Terminal: Along with user input, emotions are evaluated from voice and facial expressions, and emotional data is obtained through the emotion engine.

[0829] Step 4:

[0830] Terminal: Sends user input and emotion data to the server.

[0831] Step 5:

[0832] Server: Receives input and sends it to the natural language processing module to start the analysis.

[0833] Step 6:

[0834] Natural Language Processing module: Tokenizes the user query, extracts the keywords "gadget" and "trending" and identifies its meaning and intent.

[0835] Step 7:

[0836] Server: Receives the analysis results of the natural language processing module and clarifies the user's intent.

[0837] Step 8:

[0838] Server: Obtains the user's past purchase history and browsing history from the user profile database.

[0839] Step 9:

[0840] Server: Based on the acquired data, analyzes the user's preferences and identifies suitable product categories.

[0841] Step 10:

[0842] Server: Searches for relevant gadgets from the product database based on the user's preferences and the analysis results of the natural language processing module.

[0843] Step 11:

[0844] Server: Generates proposal candidates based on the acquired product information.

[0845] Step 12:

[0846] Server: Adjusts the priority of proposal candidates and message expressions based on the emotion data from the emotion engine.

[0847] Step 13:

[0848] Server: Generates a suggestion message that reflects the emotional data (e.g., "How about these smart glasses? Many people like them.") and sends it to the device.

[0849] Step 14:

[0850] Terminal: Displays suggested product information to the user.

[0851] Step 15:

[0852] User: Select feedback for the suggested product, such as "I like it" or "I'd like to see more options."

[0853] Step 16:

[0854] Terminal: Sends user feedback and re-evaluated emotion data to the server.

[0855] Step 17:

[0856] Server: Receives feedback and emotion data and stores it in a user profile database.

[0857] Step 18:

[0858] Server: Inputs feedback and sentiment data into the machine learning model and trains it to improve the accuracy of the next suggestion.

[0859] Step 19:

[0860] Server: Updates the system and prepares it for the next user session.

[0861] Example 2

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

[0863] With conventional systems, it was difficult to accurately identify the user's intent and make appropriate product suggestions when they made inquiries using ambiguous natural language. Furthermore, because suggestions were made without taking the user's emotions into consideration, the accuracy of personalized suggestions was low. This made it difficult for users to quickly and efficiently find the optimal product, resulting in a complicated purchasing process.

[0864] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.

[0865] In this invention, the server includes: means for accepting an inquiry from a user in ambiguous natural language; means including a natural language processing module for analyzing the inquiry and identifying the user's intention; means for retrieving the user's past purchase history and browsing history from a database and analyzing the user's preferences; means for searching for optimal products and generating candidate suggestions based on the analysis results; means including an emotion engine for recognizing the user's emotions and reflecting them in the content of suggestions; means for presenting the candidate suggestions to the user; and means for receiving feedback from the user and updating a machine learning model to improve suggestion accuracy. This makes it possible to accurately identify the user's intention in response to a user's ambiguous natural language inquiry and to make personalized product suggestions that take emotions into consideration.

[0866] A "user" is a person who uses the system to make an inquiry.

[0867] An "inquiry in ambiguous natural language" is a user's inquiry using natural language that includes non-specific expressions or unclear requests.

[0868] A "natural language processing module" is a software component that analyzes input natural language text and identifies its intent.

[0869] "User preferences" is information that indicates the user's tastes and areas of interest, and is analyzed based on the user's past purchase history and browsing history.

[0870] The "emotion engine" is a software component that analyzes the user's emotional state at the time of input and outputs the results.

[0871] "Suggestion candidates" are candidates for products or services that are generated based on the analysis results and are proposed to the user.

[0872] "Suggestion accuracy" is an indicator that indicates the accuracy and appropriateness of the suggestions that the system makes to the user.

[0873] A "machine learning model" is an algorithm and its implementation that self-learns based on data and improves the accuracy of its next proposal.

[0874] A "database" is a collection of related data stored in a structured manner, including user profiles, product information, and so on.

[0875] The "analysis result" is information about the meaning and intent of the user's inquiry analyzed by the natural language processing module.

[0876] The present invention is a system for responding to inquiries made by users in vague natural language and proposing optimal products. Specific embodiments of the system are described below.

[0877] First, the system of the present invention includes a "user interface (terminal)," a "backend processing server (server)," a "natural language processing module," a "user profile database," a "product database," a "machine learning model," and an "emotion engine."

[0878] User Interface (Terminal)

[0879] The user can use this terminal to input queries in natural language, for example, vague requests such as "I want a gadget that's popular these days." The terminal receives the user's input and emotion data from the emotion engine, and transmits them to the server.

[0880] Backend processing server (server)

[0881] The server receives the user's input data and emotion data sent from the terminal and performs the following processing.

[0882] The user's vague query is sent to a natural language processing module for analysis.

[0883] Obtain past purchase and browsing history from the user profile database.

[0884] Search for the best product from a product database based on the user's preferences.

[0885] Suggestions are generated and messages are constructed to present to the user.

[0886] Receive user feedback and sentiment data to update machine learning models.

[0887] Natural Language Processing Module

[0888] The natural language processing module analyzes vague user queries and identifies their intent. For example, this module extracts the keywords "gadget" and "recent trend" from a query such as "I want a gadget that's popular these days."

[0889] User Profile Database

[0890] The user profile database stores information about each user's past purchase history, browsing history, and preferences. This information is used to provide personalized product suggestions for each user.

[0891] Product database

[0892] The product database stores information on all products handled within the system, including detailed information such as product names, prices, reviews, and related products. The server searches this database for the most suitable product based on the analysis results of the natural language processing module and the user's preferences.

[0893] Machine learning models

[0894] The machine learning model is a learning algorithm and its implementation that improves the accuracy of suggestions based on user feedback and emotional data. The server inputs the received feedback and emotional data into the machine learning model to improve the accuracy of the next suggestion.

[0895] Emotion Engine

[0896] The emotion engine is a software component that recognizes emotions in a user's natural language input. The emotion engine analyzes the user's text input and identifies their emotional state. The emotion data is used by the server to optimize product suggestions.

[0897] Specific examples

[0898] For example, suppose a user uses a device to input, "I want a gadget that's popular these days." The device sends this input information and emotion data to the server. The server then sends the received input to a natural language processing module and receives the analysis results. It then retrieves the user's past purchase history from the user's profile database and analyzes their preferences. Next, it identifies "popular gadgets these days" from the product database and generates several suggestion candidates. Based on the output of the emotion engine, it adjusts the priority of the suggestion candidates and the wording of the message. It displays a suggestion message on the device (for example, "How about these smart glasses? They're a very popular product") and receives feedback and emotion data from the user. The server receives this feedback and emotion data and updates the machine learning model. This makes the next suggestion even more accurate.

[0899] Prompt Sentence Examples

[0900] "I want the latest gadget. I'm emotionally excited."

[0901] In this way, personalized product suggestions that take the user's emotions into consideration are realized.

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

[0903] Step 1:

[0904] A user uses a device to input a query in natural language. An example of an input is a vague request such as "I want a gadget that's popular these days." The user's input is sent to the device, which stores it for subsequent processing.

[0905] Input: User's natural language query

[0906] Output: User input data stored on the device

[0907] Step 2:

[0908] The device sends the user's input to the emotion engine to obtain emotion data. In this process, the emotion engine analyzes the emotion the user is feeling when inputting (e.g., excited, calm, etc.). The emotion engine performs text analysis to identify the emotional state.

[0909] Input: User-entered data

[0910] Output: Emotion data identified by the emotion engine

[0911] Step 3:

[0912] The terminal transmits the user's input data and emotion data to the back-end processing server, which allows the server to start the subsequent analysis process.

[0913] Input: User input data and emotion data

[0914] Output: Data sent to the server

[0915] Step 4:

[0916] The server sends the received input data to the natural language processing module for analysis. The natural language processing module analyzes the meaning of the input text and extracts keywords and important information. For example, from the text "I want a gadget that's popular these days," the keywords "gadget" and "recently popular" are extracted.

[0917] Input: User-entered data

[0918] Output: Parsed keywords and intent information

[0919] Step 5:

[0920] The server retrieves the user's past purchase history and browsing history from the user profile database, and analyzes the user's preferences based on this information.

[0921] Input: Parsed keywords and intent, user ID

[0922] Output: User preference information

[0923] Step 6:

[0924] The server searches for the most suitable product based on the analysis results and the user's preferences from the product database, which contains detailed product information, and extracts the relevant products from there.

[0925] Input: Analyzed keywords, user preference information

[0926] Output: List of target products

[0927] Step 7:

[0928] The server generates proposal candidates based on the generated target product list and emotion data, and creates messages to display on the user interface. The expression and priority of the proposal messages are adjusted based on the output of the emotion engine.

[0929] Input: Target product list, emotion data

[0930] Output: Proposal message

[0931] Step 8:

[0932] The terminal displays the proposal message received from the server to the user, who then checks the proposal message and provides feedback on its contents.

[0933] Input: Proposal message

[0934] Output: User feedback

[0935] Step 9:

[0936] The server inputs user feedback and emotion data into the machine learning model and updates the model, improving the accuracy of future suggestions.

[0937] Input: User feedback, emotional data

[0938] Output: Updated machine learning model

[0939] Through the above processing steps, optimal product suggestions that take into account the user's feelings are realized in response to the user's vague inquiries.

[0940] (Application example 2)

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

[0942] When users search for products using ambiguous natural language, they often have difficulty finding the right product. Furthermore, personalized recommendations based on the user's emotional state, past purchase history, and preferences are rare. Especially when it comes to product presentation in virtual spaces, more advanced technologies are needed to enrich the user experience.

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

[0944] In this invention, the server includes: means for accepting a user's inquiry in ambiguous natural language; means including a natural language processing module for analyzing the inquiry and identifying the user's intention; means for retrieving the user's past purchase history and browsing history from a database and analyzing the user's preferences; means for searching for optimal products and generating candidate suggestions based on the analysis results; means for presenting the candidate suggestions to the user; means for receiving feedback from the user and updating a machine learning model to improve suggestion accuracy; means for recognizing the user's emotions using an emotion engine and reflecting them in product suggestions; and display means for presenting products in a virtual space. This enables the user to receive personalized, optimal product suggestions based on their ambiguous inquiry in a virtual space.

[0945] "Ambiguous natural language" refers to a language that is composed of unclear, abstract expressions.

[0946] "Analyzing a query" means interpreting the intent and meaning of the natural language expression entered by the user and converting it into an appropriate action.

[0947] A "natural language processing module" is a software component that analyzes natural language input from a user and understands its meaning.

[0948] "Analyzing user preferences" means identifying products and services that a user prefers based on the user's past behavioral data and profile information.

[0949] The "optimal product" refers to the product that best matches the user's needs and preferences.

[0950] "Generating proposal candidates" means creating a list of products and services to present to the user based on the user's inquiry and feelings.

[0951] An "emotion engine" is a software component that identifies an emotional state from user input (text or voice).

[0952] "Virtual space" refers to an imaginary three-dimensional space generated by a computer system that transcends the physical constraints of the real world.

[0953] "Display means" refers to an interface for visually displaying information on the screen of a system or device.

[0954] A "machine learning model" is a mathematical model that uses data to train an algorithm and improve the accuracy of its recommendations.

[0955] "Feedback" refers to the opinions, evaluations, and reactions that users provide to the system.

[0956] The CuraAI system of this invention is a system that personalizes and suggests optimal products based on vague inquiries in natural language from users. This system consists of the following main hardware and software components:

[0957] Hardware and Software

[0958] Hardware

[0959] Head-mounted displays (e.g., general-purpose VR headsets)

[0960] Smartphone

[0961] software

[0962] Cloud services (e.g., general-purpose cloud hosting services)

[0963] Natural language processing modules (e.g., general-purpose natural language processing APIs)

[0964] Sentiment engine (e.g., general-purpose sentiment analysis API)

[0965] Databases (product database, user profile database)

[0966] Machine learning models (e.g., general-purpose machine learning libraries)

[0967] System Operation Overview

[0968] Terminal

[0969] The user wears a head-mounted display and logs into the virtual space. The device transmits the user's voice inquiry and emotion data to the server in real time.

[0970] server

[0971] The server analyzes the received natural language input and emotional data. It uses a natural language processing module to identify the user's intent and an emotional engine to recognize their emotional state. It then retrieves the user's past purchase history and preferences from a profile database and searches for suitable products from a product database. It then presents the generated suggestions to the user in a virtual space.

[0972] Data processing and calculation

[0973] Voice input and emotional data collection

[0974] The user's voice input and emotional data are sent from the head-mounted display to the server.

[0975] Natural Language Analysis and Emotion Recognition

[0976] The natural language processing module converts voice data into text and analyzes its intent, while the emotion engine identifies the emotional state from the input text.

[0977] Obtaining and analyzing user profile and product data

[0978] The system obtains preference information and past purchase history from the user's profile database, and searches for related products from the product database.

[0979] Generate and present product suggestions

[0980] Based on the user's preferences and emotional data, the most suitable products are selected and displayed in a virtual space.

[0981] Specific examples

[0982] 1. Hardware and Software

[0983] Hardware: General-purpose VR headset

[0984] Software: General-purpose cloud hosting service, general-purpose natural language processing API, general-purpose sentiment analysis API, product database, user profile database, general-purpose machine learning library

[0985] 2. Data Flow and Operations

[0986] Voice input: "Inside a generic VR headset, say, 'I want the latest trending gadget.'"

[0987] Output of analytical process results and product proposals

[0988] 3. Example prompts

[0989] Input: I want the latest trending gadgets

[0990] Task: Extract the main intent and potential categories for recommending products.

[0991] This system allows users to receive product suggestions based on their unique preferences and emotions through natural conversations in a virtual space. This process allows users to enjoy a more satisfying shopping experience.

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

[0993] Step 1:

[0994] The user wears a head-mounted display and logs into the virtual space. The user makes a voice inquiry in natural language, saying, "I want a gadget that's popular these days." The device collects the voice data and uses an emotion engine to analyze the user's emotional state (e.g., neutral, excited, amused, etc.). The voice data and emotion data are sent to the server in real time.

[0995] Step 2:

[0996] The server sends the voice data received from the device to a natural language processing module, which converts it into text. This text is then analyzed to identify the user's intent. For example, from the text "I want a gadget that's popular these days," the keywords "gadget" and "currently popular" are extracted. Based on this analysis, an appropriate search category is determined.

[0997] Step 3:

[0998] The server retrieves past purchase history and preference information from the user's profile database. This information is used to identify the user's preferences and interests based on the user's past purchases and browsing history. For example, if the user is particularly interested in gadgets, related products will be prioritized.

[0999] Step 4:

[1000] The server searches the product database for the most suitable products based on the user's preferences and analysis results. Based on identified keywords (e.g., "gadgets" or "current trends"), the server narrows down the search to highly relevant products. The server then generates a list of these products and compiles them as candidate suggestions.

[1001] Step 5:

[1002] The server uses the output of the emotion engine to prioritize the proposed products. For example, if it determines that the user is excited, it will emphasize the attractive features of the proposed product based on the user's level of excitement. It also adjusts the wording of the message. For example, it might use phrases such as, "This new gadget is very popular these days!"

[1003] Step 6:

[1004] The server sends the generated proposal candidates to the device and presents them to the user in the virtual space. The user checks the presented product information and selects the product they are interested in. The device then sends the user's selection and feedback to the server in real time.

[1005] Step 7:

[1006] The server receives user feedback and sentiment data and updates the machine learning model to improve the accuracy of future suggestions. For example, if a user expresses a strong interest in a particular product, products in that category will be prioritized in future suggestions.

[1007] This process allows users to receive relevant and personalized product suggestions even when they make vague natural language inquiries.

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

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

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

[1011] [Third embodiment]

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

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

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

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

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

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

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

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

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

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

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

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

[1024] The CuraAI system of this invention is a system that suggests optimal products in response to ambiguous inquiries from users in natural language. This system aims to significantly improve the process by which users efficiently search for and purchase products.

[1025] System Configuration

[1026] The CuraAI system consists of the following main components:

[1027] 1. User Interface (Terminal)

[1028] 2. Backend Processing Server (Server)

[1029] 3. Natural Language Processing Module

[1030] 4. User Profile Database

[1031] 5. Product Database

[1032] 6. Machine Learning Models

[1033] User Interface (Terminal)

[1034] The terminal provides an interface for users to input queries in natural language. Users can input vague requests through the application, such as "I want the latest trending gadgets." The terminal is responsible for transmitting this input to the server.

[1035] Backend processing server (server)

[1036] The server plays a central role in receiving and analyzing user input. Specifically, the server:

[1037] The user's vague query is sent to a natural language processing module for analysis.

[1038] Obtain past purchase and browsing history from the user's profile database.

[1039] Search for the best product from a product database based on the user's preferences.

[1040] Suggestions are generated and messages are constructed to present to the user.

[1041] Receive user feedback and update your machine learning models.

[1042] Natural Language Processing Module

[1043] The natural language processing module is a software component that analyzes vague user queries sent from the server and identifies their intent. For example, if a query says, "I want a gadget that's popular these days," the module analyzes the keywords "gadget" and "popular these days" to identify the appropriate product category.

[1044] User Profile Database

[1045] The user profile database stores information about each user's past purchase history, browsing history, and preferences. This database is used to provide personalized product recommendations for each user.

[1046] Product database

[1047] The product database stores information on all products handled within the system, including detailed information such as product name, price, reviews, related products, etc. The server searches this database for the most suitable product based on the user's preferences and the analysis results from the natural language processing module.

[1048] Machine learning models

[1049] The machine learning model is a learning algorithm and its implementation that improves the accuracy of suggestions based on user feedback. The server inputs user feedback (e.g., "I like it," "I want to see other suggestions," etc.) into the machine learning model to improve the accuracy of the next suggestion.

[1050] Specific examples

[1051] For example, suppose a user uses a device to input, "I want a gadget that's popular these days." The device sends this input information to the server. The server then sends the received input to a natural language processing module and receives the analysis results. It then retrieves the user's past purchase history from the user's profile database and analyzes their preferences. Next, it identifies "popular gadgets these days" from the product database and generates several candidate suggestions. It displays a suggestion message on the device (for example, "How about these smart glasses?") and receives feedback from the user. The server receives this feedback information and updates the machine learning model. This makes the next suggestions even more accurate.

[1052] The processing flow will be explained below.

[1053] Step 1:

[1054] Device: The user launches a CuraAI-enabled shopping app and is presented with an interface where they can type, "I want a gadget that's popular these days."

[1055] Step 2:

[1056] User: Type into the app in natural language, "I want a gadget that's popular these days."

[1057] Step 3:

[1058] Terminal: Takes user input and sends it to the server.

[1059] Step 4:

[1060] Server: Receives input and sends it to the natural language processing module to start the analysis.

[1061] Step 5:

[1062] Natural language processing module: Analyzes user queries, extracts keywords like "gadget" and "trendy," and identifies their meaning and intent.

[1063] Step 6:

[1064] Server: Receives the analysis results of the natural language processing module and clarifies the user's intent.

[1065] Step 7:

[1066] Server: Obtains the user's past purchase history and browsing history from the user profile database.

[1067] Step 8:

[1068] Server: Based on the acquired data, analyzes the user's preferences and identifies specific product categories that may interest the user.

[1069] Step 9:

[1070] Server: Searches for relevant gadgets from the product database based on the user's preferences and the analysis results of the natural language processing module.

[1071] Step 10:

[1072] Server: Generates multiple proposal candidates based on the acquired product information.

[1073] Step 11:

[1074] Server: Generates a message containing a suggestion candidate (e.g., "How about these smart glasses?") and sends it to the device.

[1075] Step 12:

[1076] Terminal: Displays suggested product information to the user.

[1077] Step 13:

[1078] User: Select feedback for the suggested product, such as "I like it" or "I'd like to see more options."

[1079] Step 14:

[1080] Terminal: Gets user feedback and sends it to the server.

[1081] Step 15:

[1082] Server: Receives feedback and stores it in a user profile database.

[1083] Step 16:

[1084] Server: Inputs the feedback information into the machine learning model and conducts training to improve the accuracy of the next proposal.

[1085] Step 17:

[1086] Server: Updates the system and prepares it for the next user session.

[1087] Example 1

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

[1089] Conventional online shopping systems have difficulty accurately understanding a user's intent and suggesting appropriate products when the user makes ambiguous inquiries in natural language. Furthermore, there are limited means for effectively using user feedback to improve the accuracy of suggestions. As a result, users often spend a lot of time before receiving a recommendation for a product that is just right for them. This invention aims to significantly improve the user's search and purchasing process by quickly and accurately suggesting optimal products in response to ambiguous inquiries in natural language.

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

[1091] In this invention, the server includes: means for accepting an ambiguous inquiry in natural language from a user; means including a natural language processing module for analyzing the inquiry and identifying the user's intention; means for acquiring the user's past behavioral history and interest information from a database and analyzing the user's preferences; means for searching for optimal products and generating suggested candidates based on the analysis results; means for presenting the suggested candidates to the user; means for receiving a response from the user and updating a machine learning model to improve suggestion accuracy; means for transmitting data from a terminal to the server; means for the server to select optimal product information from the search results and generate a suggestion message; and means for the terminal to receive the suggestion message and display it to the user. This makes it possible to make appropriate product suggestions in response to ambiguous user inquiries and further improve suggestion accuracy based on user feedback.

[1092] An "ambiguous natural language query" refers to a user inputting a vague request in natural language without providing clear and specific instructions.

[1093] A "natural language processing module" is a software component that analyzes the natural language input by the user and identifies their intent.

[1094] "Behavioral history" is data that records information about actions such as purchases and browsing that a user has performed in the past.

[1095] "Interest information" refers to information about the interests and preferences that a user has previously shown.

[1096] A "database" is an information system for efficiently managing and searching large amounts of data.

[1097] "Preferences" refers to information that reflects a user's preferences and interests.

[1098] "Suggested candidates" is a list of product candidates that are proposed to the user, generated based on the user's request and the analysis results.

[1099] "Response" refers to the feedback and actions that users take regarding the proposed products.

[1100] A "machine learning model" refers to an algorithm or its implementation that learns from data and makes predictions or classifications.

[1101] A "terminal" is an electronic device (e.g., smartphone, tablet, or PC) with which a user interacts.

[1102] A "server" is a central computer system for processing and managing data.

[1103] "Message" refers to text or information to be communicated to a user.

[1104] "Generation" is the process of creating new information or messages based on data and analytical results.

[1105] The present invention relates to a system that proposes optimal products in response to ambiguous inquiries made by users in natural language. The purpose of the present invention is to significantly improve the process by which users efficiently search for and purchase products.

[1106] System Configuration

[1107] The CuraAI system consists of the following main components:

[1108] 1. User Interface (Terminal)

[1109] 2. Backend Processing Server (Server)

[1110] 3. Natural Language Processing Module

[1111] 4. User Profile Database

[1112] 5. Product Database

[1113] 6. Machine Learning Models

[1114] User Interface (Terminal)

[1115] The terminal provides an interface for users to input queries in natural language. Users can input vague requests such as "I want the latest trending gadgets" through the application. The terminal is responsible for sending this input to the server. The specific software used is an application built with HTML and JavaScript. After the user has completed the input, the application prepares the data in JSON format and sends it to the server using an HTTP POST request.

[1116] Backend processing server (server)

[1117] The server plays a central role in receiving and parsing user input. Its responsibilities are to:

[1118] 1. Input Analysis

[1119] The server passes the user's input data to a natural language processing module and receives the analysis results, which uses Python's NLTK or SpaCy to parse the text and extract key keywords.

[1120] 2. Data Acquisition

[1121] The server uses SQL queries or a NoSQL database (e.g., MongoDB) to retrieve past purchase and browsing history from a user profile database, thereby understanding the user's preferences.

[1122] 3. Product Search

[1123] Based on the user profile and keywords, the server searches for the most suitable products from a product database, which contains details such as product names, prices, reviews, etc. For example, the server executes an SQL query to search for "the most popular gadgets these days."

[1124] 4. Proposal Message Generation

[1125] The server selects the most suitable product information from the search results and generates a message to suggest to the user, using a natural language generation (NLG) algorithm to construct a message such as, "How about these smart glasses?"

[1126] 5. Feedback Processing

[1127] The server receives feedback from users and stores it in a database, which is used to update the machine learning model.

[1128] Natural Language Processing Module

[1129] The natural language processing module is a software component that analyzes vague user queries sent from the server and identifies their intent. For example, it uses Python's NLTK and SpaCy to analyze text and extract the keywords "trending" and "gadget" from a query such as "I want a gadget that's popular these days."

[1130] User Profile Database

[1131] The user profile database stores information about each user's past purchase history, browsing history, and preferences. It is built using SQL or NoSQL database technology (e.g., MySQL, MongoDB), allowing for efficient information retrieval. This information is used to make personalized product suggestions for each user.

[1132] Product database

[1133] The product database stores all product information (e.g., product name, price, reviews, related products).

[1134] It uses SQL or NoSQL databases (e.g. PostgreSQL, Elasticsearch) to manage data and search for the right products based on user requests.

[1135] Machine learning models

[1136] The server updates the machine learning model based on user feedback to improve the accuracy of the suggestions. This model is trained using algorithms such as Scikit-learn and TensorFlow. The feedback data is used to train a new model, which is then reflected in the next suggestions.

[1137] Specific examples

[1138] For example, suppose a user uses a device to input "I want a gadget that's popular these days." The device sends this input information in JSON format to the server. The server analyzes the received input data using a natural language processing module and extracts key keywords. Next, it retrieves past purchase history from the user profile database and generates a search query. It searches for relevant products in the product database and generates an optimal suggestion message. This message is sent to the device, and a message is displayed to the user asking, "How about these smart glasses?" When the user presses the "I like it" button, that feedback is sent to the server and stored in the database. The server uses this feedback to update the machine learning model and improve the accuracy of the next suggestion.

[1139] Prompt Sentence Examples

[1140] "Please recommend the latest trending gadgets based on the user's preferences."

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

[1142] Step 1:

[1143] A user uses a terminal to input a query in natural language.

[1144] Specifically, the user enters "I want a gadget that's popular these days" into the application's text input field. This input is temporarily stored in the device's internal memory.

[1145] Input: A natural language query entered by a user into a text input field (e.g., "I want the latest trending gadgets").

[1146] Output: User input data temporarily stored on the device.

[1147] Step 2:

[1148] The terminal transmits the user's input data to the server.

[1149] Specifically, the terminal uses the JavaScript fetch API to issue an HTTP POST request that sends the input data in JSON format.

[1150] Input: User input data (JSON format) temporarily saved on the device.

[1151] Output: User-entered data sent to the server.

[1152] Step 3:

[1153] The server receives the user's inquiry data and passes the data to the natural language processing module.

[1154] Specifically, the server parses the received JSON data and uses Python's NLTK or SpaCy to analyze the text and extract key keywords.

[1155] Input: User-entered data sent to the server (JSON format).

[1156] Output: Parsed keywords (e.g. "trend", "gadget").

[1157] Step 4:

[1158] The server retrieves past behavioral history from a user profile database.

[1159] Specifically, the server executes an SQL query (e.g., "SELECT FROM user_profiles WHERE user_id = '12345'") to retrieve the user's profile information, including past purchase data and search history.

[1160] Input: Parsed keywords, user ID.

[1161] Output: Retrieved user profile information (purchase data, search history).

[1162] Step 5:

[1163] The server searches for the most suitable product from the product database.

[1164] Specifically, the server executes an SQL query (e.g., "SELECT FROM products WHERE category = 'gadgets' AND trending = 1") to retrieve product information.

[1165] Input: Parsed keywords, user profile information.

[1166] Output: Searched product data (product name, price, reviews, etc.).

[1167] Step 6:

[1168] The server generates a proposal message.

[1169] Specifically, the server uses a natural language generation algorithm to construct a suggestion message (e.g., "How about these smart glasses?").

[1170] Input: Searched product data.

[1171] Output: The generated proposal message.

[1172] Step 7:

[1173] The terminal receives the proposal message from the server and displays it to the user.

[1174] Specifically, the device parses the received JSON data and renders the proposed message in HTML format, which the user can view on the application screen.

[1175] Input: The proposal message sent by the server (in JSON format).

[1176] Output: The suggestion message that is displayed to the user.

[1177] Step 8:

[1178] The user provides feedback on the proposed product.

[1179] Specifically, the user clicks a button such as "I like it" or "I want to see more suggestions." The device records this feedback.

[1180] Input: User feedback input (click operation).

[1181] Output: Feedback data recorded on the device.

[1182] Step 9:

[1183] The terminal transmits the user's feedback data to the server.

[1184] Specifically, the device again uses the JavaScript fetch API to send feedback data in JSON format.

[1185] Input: Recorded feedback data (JSON format).

[1186] Output: Feedback data sent to the server.

[1187] Step 10:

[1188] The server receives the feedback data and updates the machine learning model.

[1189] Specifically, the server stores the feedback data in a database, inputs it as new training data into the machine learning model, and retrains the model using an algorithm (e.g., Scikit-learn or TensorFlow).

[1190] Input: Feedback data sent to the server, existing training data.

[1191] Output: An updated machine learning model.

[1192] (Application example 1)

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

[1194] Conventional systems have difficulty in suggesting optimal products in response to users' vague natural language queries. Furthermore, they lack the precision to quickly suggest appropriate products based on users' preferences and past purchase history. As a result, users have to spend a lot of time searching for products, making the purchasing process inefficient.

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

[1196] In this invention, the server includes: means for accepting an inquiry in ambiguous natural language from a user; means including a natural language processing module for analyzing the inquiry and identifying the user's intention; means for retrieving the user's past purchase history and browsing history from a database and analyzing the user's preferences; means for searching for optimal products and generating suggested candidates based on the analysis results; means including a smartphone application for presenting the suggested candidates to the user; and means for receiving feedback from the user and updating a machine learning model to improve suggestion accuracy. This enables efficient and accurate product suggestions in response to ambiguous user inquiries.

[1197] The "means for accepting an inquiry in an ambiguous natural language from a user" is an interface for receiving an ambiguous request input by a user in a natural language.

[1198] The "means including a natural language processing module for analyzing the query and identifying the user's intention" is a module equipped with a natural language processing function for analyzing the user's query and understanding its intention.

[1199] The "means for acquiring the user's past purchase history and browsing history from a database and analyzing the user's preferences" is a function for acquiring the user's past behavioral data and estimating the user's preferences based on that data.

[1200] "Means for searching for optimal products and generating suggested candidates based on the analysis results" refers to a function for searching for related products and generating suggested candidates based on the analysis results of the natural language processing module and the user's preferences.

[1201] The "means including a smartphone application for presenting the proposal candidates to the user" is an application that runs on a smartphone for presenting the generated proposal candidates to the user.

[1202] "Means for receiving feedback from users and updating the machine learning model to improve the accuracy of suggestions" refers to a function for receiving feedback from users and updating the machine learning algorithm to improve the accuracy of suggestions based on that feedback.

[1203] This invention is a system for suggesting optimal products in response to a user's inquiry in ambiguous natural language. The system interacts with the user via a smartphone application, identifies the user's intent, and suggests products that are in line with that intent.

[1204] System Configuration

[1205] In an embodiment of the present invention, the system comprises the following components:

[1206] 1. Smartphone application

[1207] It provides an interface for users to input queries in natural language. For example, a user might input, "I want a smartphone that's popular these days."

[1208] 2. Backend Server

[1209] It acts as a central point for receiving and parsing user input. This server does the following:

[1210] The natural language processing module analyzes the user's ambiguous queries and identifies their intent.

[1211] The user's past purchase history and browsing history are obtained from the database and the user's preferences are analyzed.

[1212] The optimal product is searched for in the product database and proposal candidates are generated.

[1213] The proposed candidates are sent to a smartphone application and presented to the user.

[1214] Receive user feedback and update the machine learning model to improve the accuracy of suggestions.

[1215] Software and hardware used

[1216] Natural Language Processing Module: Transformers Library (Hugging Face)

[1217] Database: SQLite

[1218] Backend server: Flask (Python web framework)

[1219] Frontend: React Native (smartphone application)

[1220] System operation explanation

[1221] 1. Inquiry reception and analysis

[1222] A user inputs a vague query such as "I want a smartphone that is popular these days" through a smartphone application. This input is sent to the server.

[1223] The server sends the received query to a natural language processing module, tokenizes the input sentence, and obtains the analysis result.

[1224] 2. User profile acquisition and preference analysis

[1225] The server retrieves the user's past purchase history and browsing history from the database and analyzes the user's preferences.

[1226] 3. Product search and candidate suggestion generation

[1227] The server searches for the most suitable product from the product database based on the analysis results and the user's preference data.

[1228] Suggestion candidates are generated, sent to a smartphone application, and presented to the user.

[1229] 4. Receiving feedback and updating the machine learning model

[1230] The system receives user feedback on the presented suggested products, such as "I like this product" or "I'd like to see other options."

[1231] The server uses this feedback to update the machine learning model and improve the accuracy of its next proposal.

[1232] Specific examples

[1233] For example, a user opens a smartphone application and types, "I want a smartphone that's popular these days." The server receives this and analyzes it using a natural language processing module. The analysis results in the keywords "smartphone" and "latest trends." The server then retrieves the user's purchase history and browsing history from a database to understand the user's preferences. Based on these results, the most suitable smartphone is searched for and suggested from a product database. The suggestion is displayed to the user via the smartphone application, asking, "How about this new smartphone?" The user provides feedback on the presented product, and the results lead to improved suggestion accuracy next time.

[1234] Example prompt for a generative AI model:

[1235] "What are some popular smartphones? Please choose one taking into account the latest trends."

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

[1237] Step 1:

[1238] The user launches the smartphone application and enters a query.

[1239] Input: A user types a vague natural language query into a text field in an application, such as "I want a smartphone that's popular these days."

[1240] Output: The user's input text.

[1241] Specific actions: The user opens the application on their smartphone, enters a query in the text field, and presses the send button.

[1242] Step 2:

[1243] The terminal sends the user's input to the server.

[1244] Input: The text entered by the user.

[1245] Output: The user's input text as received by the server.

[1246] Specific operation: The terminal sends the entered text to the server as an HTTP request.

[1247] Step 3:

[1248] The server uses a natural language processing module to analyze the user's ambiguous query.

[1249] Input: The text entered by the user.

[1250] Output: Analysis results (e.g. keywords "smartphone" and "recent trends").

[1251] Specific operation: The server passes the received text to the natural language processing module, performs text analysis, and extracts keywords.

[1252] Step 4:

[1253] The server retrieves the user's past purchase history and browsing history from the database and analyzes their preferences.

[1254] Input: User's ID (e.g. 12345).

[1255] Output: Data on the user's past purchase and browsing history (e.g. "smartphone", "high-resolution camera", etc.).

[1256] Specific operation: The server executes a database query based on the user ID to obtain the user's purchase history and browsing history.

[1257] Step 5:

[1258] The server searches the product database for the most suitable product based on the analysis results and preference data.

[1259] Input: Analysis results (keywords) and user preference data.

[1260] Output: A list of the best products (e.g. "Latest high-resolution camera smartphones").

[1261] Specific operation: The server queries the product database using keywords and user preferences to list relevant products.

[1262] Step 6:

[1263] The server generates proposal candidates and sends them to the smartphone application.

[1264] Input: A list of best products.

[1265] Output: Suggestions to show to the user (e.g., "How about this latest smartphone?").

[1266] Specific operation: The server obtains detailed product data, generates a proposal message, and then sends it to the smartphone application.

[1267] Step 7:

[1268] The terminal presents the received proposal candidates to the user.

[1269] Input: A proposal candidate message.

[1270] Output: The proposal screen that is displayed to the user.

[1271] Specific operation: The terminal analyzes the proposal message received from the server and displays it on the user's screen.

[1272] Step 8:

[1273] The user provides feedback on the proposed product.

[1274] Input: User feedback (e.g., "I like this product" or "I'd like to see more suggestions").

[1275] Output: User feedback data.

[1276] Specific operation: The user inputs feedback about the presented product and sends it to the server via the terminal.

[1277] Step 9:

[1278] The server receives user feedback and updates the machine learning model.

[1279] Input: User feedback data.

[1280] Output: An updated machine learning model.

[1281] Specific operation: The server retrains the machine learning model based on the received feedback to improve the accuracy of the suggestions.

[1282] The above are the specific processing steps of the system.

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

[1284] The CuraAI system of this invention is a system that suggests optimal products in response to ambiguous inquiries from users in natural language. Furthermore, by combining it with an emotion engine that recognizes user emotions, it achieves more accurate and personalized product suggestions. The purpose of this invention is to improve the process by which users efficiently search for and purchase products.

[1285] System Configuration

[1286] The CuraAI system consists of the following main components:

[1287] 1. User Interface (Terminal)

[1288] 2. Backend Processing Server (Server)

[1289] 3. Natural Language Processing Module

[1290] 4. User Profile Database

[1291] 5. Product Database

[1292] 6. Machine Learning Models

[1293] 7. Emotion Engine

[1294] User Interface (Terminal)

[1295] The terminal provides an interface for users to input queries in natural language. Users can input vague requests such as "I want the latest trendy gadget" through the application. The terminal is responsible for sending this input and emotion engine data to the server.

[1296] Backend processing server (server)

[1297] The server plays a central role in receiving and analyzing user input and emotion data. Specifically, the server performs the following processes:

[1298] The user's vague query is sent to a natural language processing module for analysis.

[1299] Obtain past purchase and browsing history from the user's profile database.

[1300] Search for the best product from a product database based on the user's preferences.

[1301] Suggestions are generated and messages are constructed to present to the user.

[1302] Receive user feedback and sentiment data to update machine learning models.

[1303] Natural Language Processing Module

[1304] The natural language processing module is a software component that analyzes vague user queries sent from the server and identifies their intent. For example, if a query says, "I want a gadget that's popular these days," the module analyzes the keywords "gadget" and "popular" to identify the appropriate product category.

[1305] User Profile Database

[1306] The user profile database stores information about each user's past purchase history, browsing history, and preferences. This database is used to provide personalized product recommendations for each user.

[1307] Product database

[1308] The product database stores information on all products handled within the system, including detailed information such as product name, price, reviews, related products, etc. The server searches this database for the most suitable product based on the user's preferences and the analysis results from the natural language processing module.

[1309] Machine learning models

[1310] The machine learning model is a learning algorithm and its implementation that improves the accuracy of suggestions based on user feedback and emotional data. The server inputs user feedback (e.g., "I like it" or "I want to see other suggestions") and emotional data into the machine learning model to improve the accuracy of the next suggestion.

[1311] Emotion Engine

[1312] The emotion engine is a software component that recognizes emotions during natural language input from users. The emotion engine analyzes the user's text and voice input to identify their emotional state (e.g., happy, sad, excited, etc.). The server uses the recognized emotion data to optimize product recommendations.

[1313] Specific examples

[1314] For example, suppose a user uses a device to input, "I want a gadget that's popular these days." The device sends this input information and emotion data to the server. The server then sends the received input to a natural language processing module and receives the analysis results. It then retrieves the user's past purchase history from the user's profile database and analyzes their preferences. Next, it identifies "popular gadgets these days" from the product database and generates several suggestion candidates. Based on the output of the emotion engine, it adjusts the priority of the suggestion candidates and the wording of the message. It displays a suggestion message on the device (for example, "How about these smart glasses? They're a very popular product") and receives feedback and emotion data from the user. The server receives this feedback and emotion data and updates the machine learning model. This makes the next suggestion even more accurate.

[1315] The processing flow will be explained below.

[1316] Step 1:

[1317] Device: The user launches a CuraAI-enabled shopping app and is presented with an interface where they can type, "I want a gadget that's popular these days."

[1318] Step 2:

[1319] User: Type into the app in natural language, "I want a gadget that's popular these days."

[1320] Step 3:

[1321] Terminal: Along with user input, emotions are evaluated from voice and facial expressions, and emotional data is obtained through the emotion engine.

[1322] Step 4:

[1323] Terminal: Sends user input and emotion data to the server.

[1324] Step 5:

[1325] Server: Receives input and sends it to the natural language processing module to start the analysis.

[1326] Step 6:

[1327] Natural Language Processing module: Tokenizes the user query, extracts the keywords "gadget" and "trending" and identifies its meaning and intent.

[1328] Step 7:

[1329] Server: Receives the analysis results of the natural language processing module and clarifies the user's intent.

[1330] Step 8:

[1331] Server: Obtains the user's past purchase history and browsing history from the user profile database.

[1332] Step 9:

[1333] Server: Based on the acquired data, analyzes the user's preferences and identifies suitable product categories.

[1334] Step 10:

[1335] Server: Searches for relevant gadgets from the product database based on the user's preferences and the analysis results of the natural language processing module.

[1336] Step 11:

[1337] Server: Generates proposal candidates based on the acquired product information.

[1338] Step 12:

[1339] Server: Adjusts the priority of proposal candidates and message expressions based on the emotion data from the emotion engine.

[1340] Step 13:

[1341] Server: Generates a suggestion message that reflects the emotional data (e.g., "How about these smart glasses? Many people like them.") and sends it to the device.

[1342] Step 14:

[1343] Terminal: Displays suggested product information to the user.

[1344] Step 15:

[1345] User: Select feedback for the suggested product, such as "I like it" or "I'd like to see more options."

[1346] Step 16:

[1347] Terminal: Sends user feedback and re-evaluated emotion data to the server.

[1348] Step 17:

[1349] Server: Receives feedback and emotion data and stores it in a user profile database.

[1350] Step 18:

[1351] Server: Inputs feedback and sentiment data into the machine learning model and trains it to improve the accuracy of the next suggestion.

[1352] Step 19:

[1353] Server: Updates the system and prepares it for the next user session.

[1354] Example 2

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

[1356] With conventional systems, it was difficult to accurately identify the user's intent and make appropriate product suggestions when they made inquiries using ambiguous natural language. Furthermore, because suggestions were made without taking the user's emotions into consideration, the accuracy of personalized suggestions was low. This made it difficult for users to quickly and efficiently find the optimal product, resulting in a complicated purchasing process.

[1357] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.

[1358] In this invention, the server includes: means for accepting an inquiry from a user in ambiguous natural language; means including a natural language processing module for analyzing the inquiry and identifying the user's intention; means for retrieving the user's past purchase history and browsing history from a database and analyzing the user's preferences; means for searching for optimal products and generating candidate suggestions based on the analysis results; means including an emotion engine for recognizing the user's emotions and reflecting them in the content of suggestions; means for presenting the candidate suggestions to the user; and means for receiving feedback from the user and updating a machine learning model to improve suggestion accuracy. This makes it possible to accurately identify the user's intention in response to a user's ambiguous natural language inquiry and to make personalized product suggestions that take emotions into consideration.

[1359] A "user" is a person who uses the system to make an inquiry.

[1360] An "inquiry in ambiguous natural language" is a user's inquiry using natural language that includes non-specific expressions or unclear requests.

[1361] A "natural language processing module" is a software component that analyzes input natural language text and identifies its intent.

[1362] "User preferences" is information that indicates the user's tastes and areas of interest, and is analyzed based on the user's past purchase history and browsing history.

[1363] The "emotion engine" is a software component that analyzes the user's emotional state at the time of input and outputs the results.

[1364] "Suggestion candidates" are candidates for products or services that are generated based on the analysis results and are proposed to the user.

[1365] "Suggestion accuracy" is an indicator that indicates the accuracy and appropriateness of the suggestions that the system makes to the user.

[1366] A "machine learning model" is an algorithm and its implementation that self-learns based on data and improves the accuracy of its next proposal.

[1367] A "database" is a collection of related data stored in a structured manner, including user profiles, product information, and so on.

[1368] The "analysis result" is information about the meaning and intent of the user's inquiry analyzed by the natural language processing module.

[1369] The present invention is a system for responding to inquiries made by users in vague natural language and proposing optimal products. Specific embodiments of the system are described below.

[1370] First, the system of the present invention includes a "user interface (terminal)," a "backend processing server (server)," a "natural language processing module," a "user profile database," a "product database," a "machine learning model," and an "emotion engine."

[1371] User Interface (Terminal)

[1372] The user can use this terminal to input queries in natural language, for example, vague requests such as "I want a gadget that's popular these days." The terminal receives the user's input and emotion data from the emotion engine, and transmits them to the server.

[1373] Backend processing server (server)

[1374] The server receives the user's input data and emotion data sent from the terminal and performs the following processing.

[1375] The user's vague query is sent to a natural language processing module for analysis.

[1376] Obtain past purchase and browsing history from the user profile database.

[1377] Search for the best product from a product database based on the user's preferences.

[1378] Suggestions are generated and messages are constructed to present to the user.

[1379] Receive user feedback and sentiment data to update machine learning models.

[1380] Natural Language Processing Module

[1381] The natural language processing module analyzes vague user queries and identifies their intent. For example, this module extracts the keywords "gadget" and "recent trend" from a query such as "I want a gadget that's popular these days."

[1382] User Profile Database

[1383] The user profile database stores information about each user's past purchase history, browsing history, and preferences. This information is used to provide personalized product suggestions for each user.

[1384] Product database

[1385] The product database stores information on all products handled within the system, including detailed information such as product names, prices, reviews, and related products. The server searches this database for the most suitable product based on the analysis results of the natural language processing module and the user's preferences.

[1386] Machine learning models

[1387] The machine learning model is a learning algorithm and its implementation that improves the accuracy of suggestions based on user feedback and emotional data. The server inputs the received feedback and emotional data into the machine learning model to improve the accuracy of the next suggestion.

[1388] Emotion Engine

[1389] The emotion engine is a software component that recognizes emotions in a user's natural language input. The emotion engine analyzes the user's text input and identifies their emotional state. The emotion data is used by the server to optimize product suggestions.

[1390] Specific examples

[1391] For example, suppose a user uses a device to input, "I want a gadget that's popular these days." The device sends this input information and emotion data to the server. The server then sends the received input to a natural language processing module and receives the analysis results. It then retrieves the user's past purchase history from the user's profile database and analyzes their preferences. Next, it identifies "popular gadgets these days" from the product database and generates several suggestion candidates. Based on the output of the emotion engine, it adjusts the priority of the suggestion candidates and the wording of the message. It displays a suggestion message on the device (for example, "How about these smart glasses? They're a very popular product") and receives feedback and emotion data from the user. The server receives this feedback and emotion data and updates the machine learning model. This makes the next suggestion even more accurate.

[1392] Prompt Sentence Examples

[1393] "I want the latest gadget. I'm emotionally excited."

[1394] In this way, personalized product suggestions that take the user's emotions into consideration are realized.

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

[1396] Step 1:

[1397] A user uses a device to input a query in natural language. An example of an input is a vague request such as "I want a gadget that's popular these days." The user's input is sent to the device, which stores it for subsequent processing.

[1398] Input: User's natural language query

[1399] Output: User input data stored on the device

[1400] Step 2:

[1401] The device sends the user's input to the emotion engine to obtain emotion data. In this process, the emotion engine analyzes the emotion the user is feeling when inputting (e.g., excited, calm, etc.). The emotion engine performs text analysis to identify the emotional state.

[1402] Input: User-entered data

[1403] Output: Emotion data identified by the emotion engine

[1404] Step 3:

[1405] The terminal transmits the user's input data and emotion data to the back-end processing server, which allows the server to start the subsequent analysis process.

[1406] Input: User input data and emotion data

[1407] Output: Data sent to the server

[1408] Step 4:

[1409] The server sends the received input data to the natural language processing module for analysis. The natural language processing module analyzes the meaning of the input text and extracts keywords and important information. For example, from the text "I want a gadget that's popular these days," the keywords "gadget" and "recently popular" are extracted.

[1410] Input: User-entered data

[1411] Output: Parsed keywords and intent information

[1412] Step 5:

[1413] The server retrieves the user's past purchase history and browsing history from the user profile database, and analyzes the user's preferences based on this information.

[1414] Input: Parsed keywords and intent, user ID

[1415] Output: User preference information

[1416] Step 6:

[1417] The server searches for the most suitable product based on the analysis results and the user's preferences from the product database, which contains detailed product information, and extracts the relevant products from there.

[1418] Input: Analyzed keywords, user preference information

[1419] Output: List of target products

[1420] Step 7:

[1421] The server generates proposal candidates based on the generated target product list and emotion data, and creates messages to display on the user interface. The expression and priority of the proposal messages are adjusted based on the output of the emotion engine.

[1422] Input: Target product list, emotion data

[1423] Output: Proposal message

[1424] Step 8:

[1425] The terminal displays the proposal message received from the server to the user, who then checks the proposal message and provides feedback on its contents.

[1426] Input: Proposal message

[1427] Output: User feedback

[1428] Step 9:

[1429] The server inputs user feedback and emotion data into the machine learning model and updates the model, improving the accuracy of future suggestions.

[1430] Input: User feedback, emotional data

[1431] Output: Updated machine learning model

[1432] Through the above processing steps, optimal product suggestions that take into account the user's feelings are realized in response to the user's vague inquiries.

[1433] (Application example 2)

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

[1435] When users search for products using ambiguous natural language, they often have difficulty finding the right product. Furthermore, personalized recommendations based on the user's emotional state, past purchase history, and preferences are rare. Especially when it comes to product presentation in virtual spaces, more advanced technologies are needed to enrich the user experience.

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

[1437] In this invention, the server includes: means for accepting a user's inquiry in ambiguous natural language; means including a natural language processing module for analyzing the inquiry and identifying the user's intention; means for retrieving the user's past purchase history and browsing history from a database and analyzing the user's preferences; means for searching for optimal products and generating candidate suggestions based on the analysis results; means for presenting the candidate suggestions to the user; means for receiving feedback from the user and updating a machine learning model to improve suggestion accuracy; means for recognizing the user's emotions using an emotion engine and reflecting them in product suggestions; and display means for presenting products in a virtual space. This enables the user to receive personalized, optimal product suggestions based on their ambiguous inquiry in a virtual space.

[1438] "Ambiguous natural language" refers to a language that is composed of unclear, abstract expressions.

[1439] "Analyzing a query" means interpreting the intent and meaning of the natural language expression entered by the user and converting it into an appropriate action.

[1440] A "natural language processing module" is a software component that analyzes natural language input from a user and understands its meaning.

[1441] "Analyzing user preferences" means identifying products and services that a user prefers based on the user's past behavioral data and profile information.

[1442] The "optimal product" refers to the product that best matches the user's needs and preferences.

[1443] "Generating proposal candidates" means creating a list of products and services to present to the user based on the user's inquiry and feelings.

[1444] An "emotion engine" is a software component that identifies an emotional state from user input (text or voice).

[1445] "Virtual space" refers to an imaginary three-dimensional space generated by a computer system that transcends the physical constraints of the real world.

[1446] "Display means" refers to an interface for visually displaying information on the screen of a system or device.

[1447] A "machine learning model" is a mathematical model that uses data to train an algorithm and improve the accuracy of its recommendations.

[1448] "Feedback" refers to the opinions, evaluations, and reactions that users provide to the system.

[1449] The CuraAI system of this invention is a system that personalizes and suggests optimal products based on vague inquiries in natural language from users. This system consists of the following main hardware and software components:

[1450] Hardware and Software

[1451] Hardware

[1452] Head-mounted displays (e.g., general-purpose VR headsets)

[1453] Smartphone

[1454] software

[1455] Cloud services (e.g., general-purpose cloud hosting services)

[1456] Natural language processing modules (e.g., general-purpose natural language processing APIs)

[1457] Sentiment engine (e.g., general-purpose sentiment analysis API)

[1458] Databases (product database, user profile database)

[1459] Machine learning models (e.g., general-purpose machine learning libraries)

[1460] System Operation Overview

[1461] Terminal

[1462] The user wears a head-mounted display and logs into the virtual space. The device transmits the user's voice inquiry and emotion data to the server in real time.

[1463] server

[1464] The server analyzes the received natural language input and emotional data. It uses a natural language processing module to identify the user's intent and an emotional engine to recognize their emotional state. It then retrieves the user's past purchase history and preferences from a profile database and searches for suitable products from a product database. It then presents the generated suggestions to the user in a virtual space.

[1465] Data processing and calculation

[1466] Voice input and emotional data collection

[1467] The user's voice input and emotional data are sent from the head-mounted display to the server.

[1468] Natural Language Analysis and Emotion Recognition

[1469] The natural language processing module converts voice data into text and analyzes its intent, while the emotion engine identifies the emotional state from the input text.

[1470] Obtaining and analyzing user profile and product data

[1471] The system obtains preference information and past purchase history from the user's profile database, and searches for related products from the product database.

[1472] Generate and present product suggestions

[1473] Based on the user's preferences and emotional data, the most suitable products are selected and displayed in a virtual space.

[1474] Specific examples

[1475] 1. Hardware and Software

[1476] Hardware: General-purpose VR headset

[1477] Software: General-purpose cloud hosting service, general-purpose natural language processing API, general-purpose sentiment analysis API, product database, user profile database, general-purpose machine learning library

[1478] 2. Data Flow and Operations

[1479] Voice input: "Inside a generic VR headset, say, 'I want the latest trending gadget.'"

[1480] Output of analytical process results and product proposals

[1481] 3. Example prompts

[1482] Input: I want the latest trending gadgets

[1483] Task: Extract the main intent and potential categories for recommending products.

[1484] This system allows users to receive product suggestions based on their unique preferences and emotions through natural conversations in a virtual space. This process allows users to enjoy a more satisfying shopping experience.

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

[1486] Step 1:

[1487] The user wears a head-mounted display and logs into the virtual space. The user makes a voice inquiry in natural language, saying, "I want a gadget that's popular these days." The device collects the voice data and uses an emotion engine to analyze the user's emotional state (e.g., neutral, excited, amused, etc.). The voice data and emotion data are sent to the server in real time.

[1488] Step 2:

[1489] The server sends the voice data received from the device to a natural language processing module, which converts it into text. This text is then analyzed to identify the user's intent. For example, from the text "I want a gadget that's popular these days," the keywords "gadget" and "currently popular" are extracted. Based on this analysis, an appropriate search category is determined.

[1490] Step 3:

[1491] The server retrieves past purchase history and preference information from the user's profile database. This information is used to identify the user's preferences and interests based on the user's past purchases and browsing history. For example, if the user is particularly interested in gadgets, related products will be prioritized.

[1492] Step 4:

[1493] The server searches the product database for the most suitable products based on the user's preferences and analysis results. Based on identified keywords (e.g., "gadgets" or "current trends"), the server narrows down the search to highly relevant products. The server then generates a list of these products and compiles them as candidate suggestions.

[1494] Step 5:

[1495] The server uses the output of the emotion engine to prioritize the proposed products. For example, if it determines that the user is excited, it will emphasize the attractive features of the proposed product based on the user's level of excitement. It also adjusts the wording of the message. For example, it might use phrases such as, "This new gadget is very popular these days!"

[1496] Step 6:

[1497] The server sends the generated proposal candidates to the device and presents them to the user in the virtual space. The user checks the presented product information and selects the product they are interested in. The device then sends the user's selection and feedback to the server in real time.

[1498] Step 7:

[1499] The server receives user feedback and sentiment data and updates the machine learning model to improve the accuracy of future suggestions. For example, if a user expresses a strong interest in a particular product, products in that category will be prioritized in future suggestions.

[1500] This process allows users to receive relevant and personalized product suggestions even when they make vague natural language inquiries.

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

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

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

[1504] [Fourth embodiment]

[1505] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.

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

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

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

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

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

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

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

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

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

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

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

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

[1518] The CuraAI system of this invention is a system that suggests optimal products in response to ambiguous inquiries from users in natural language. This system aims to significantly improve the process by which users efficiently search for and purchase products.

[1519] System Configuration

[1520] The CuraAI system consists of the following main components:

[1521] 1. User Interface (Terminal)

[1522] 2. Backend Processing Server (Server)

[1523] 3. Natural Language Processing Module

[1524] 4. User Profile Database

[1525] 5. Product Database

[1526] 6. Machine Learning Models

[1527] User Interface (Terminal)

[1528] The terminal provides an interface for users to input queries in natural language. Users can input vague requests through the application, such as "I want the latest trending gadgets." The terminal is responsible for transmitting this input to the server.

[1529] Backend processing server (server)

[1530] The server plays a central role in receiving and analyzing user input. Specifically, the server:

[1531] The user's vague query is sent to a natural language processing module for analysis.

[1532] Obtain past purchase and browsing history from the user's profile database.

[1533] Search for the best product from a product database based on the user's preferences.

[1534] Suggestions are generated and messages are constructed to present to the user.

[1535] Receive user feedback and update your machine learning models.

[1536] Natural Language Processing Module

[1537] The natural language processing module is a software component that analyzes vague user queries sent from the server and identifies their intent. For example, if a query says, "I want a gadget that's popular these days," the module analyzes the keywords "gadget" and "popular these days" to identify the appropriate product category.

[1538] User Profile Database

[1539] The user profile database stores information about each user's past purchase history, browsing history, and preferences. This database is used to provide personalized product recommendations for each user.

[1540] Product database

[1541] The product database stores information on all products handled within the system, including detailed information such as product name, price, reviews, related products, etc. The server searches this database for the most suitable product based on the user's preferences and the analysis results from the natural language processing module.

[1542] Machine learning models

[1543] The machine learning model is a learning algorithm and its implementation that improves the accuracy of suggestions based on user feedback. The server inputs user feedback (e.g., "I like it," "I want to see other suggestions," etc.) into the machine learning model to improve the accuracy of the next suggestion.

[1544] Specific examples

[1545] For example, suppose a user uses a device to input, "I want a gadget that's popular these days." The device sends this input information to the server. The server then sends the received input to a natural language processing module and receives the analysis results. It then retrieves the user's past purchase history from the user's profile database and analyzes their preferences. Next, it identifies "popular gadgets these days" from the product database and generates several candidate suggestions. It displays a suggestion message on the device (for example, "How about these smart glasses?") and receives feedback from the user. The server receives this feedback information and updates the machine learning model. This makes the next suggestions even more accurate.

[1546] The processing flow will be explained below.

[1547] Step 1:

[1548] Device: The user launches a CuraAI-enabled shopping app and is presented with an interface where they can type, "I want a gadget that's popular these days."

[1549] Step 2:

[1550] User: Type into the app in natural language, "I want a gadget that's popular these days."

[1551] Step 3:

[1552] Terminal: Takes user input and sends it to the server.

[1553] Step 4:

[1554] Server: Receives input and sends it to the natural language processing module to start the analysis.

[1555] Step 5:

[1556] Natural language processing module: Analyzes user queries, extracts keywords like "gadget" and "trendy," and identifies their meaning and intent.

[1557] Step 6:

[1558] Server: Receives the analysis results of the natural language processing module and clarifies the user's intent.

[1559] Step 7:

[1560] Server: Obtains the user's past purchase history and browsing history from the user profile database.

[1561] Step 8:

[1562] Server: Based on the acquired data, analyzes the user's preferences and identifies specific product categories that may interest the user.

[1563] Step 9:

[1564] Server: Searches for relevant gadgets from the product database based on the user's preferences and the analysis results of the natural language processing module.

[1565] Step 10:

[1566] Server: Generates multiple proposal candidates based on the acquired product information.

[1567] Step 11:

[1568] Server: Generates a message containing a suggestion candidate (e.g., "How about these smart glasses?") and sends it to the device.

[1569] Step 12:

[1570] Terminal: Displays suggested product information to the user.

[1571] Step 13:

[1572] User: Select feedback for the suggested product, such as "I like it" or "I'd like to see more options."

[1573] Step 14:

[1574] Terminal: Gets user feedback and sends it to the server.

[1575] Step 15:

[1576] Server: Receives feedback and stores it in a user profile database.

[1577] Step 16:

[1578] Server: Inputs the feedback information into the machine learning model and conducts training to improve the accuracy of the next proposal.

[1579] Step 17:

[1580] Server: Updates the system and prepares it for the next user session.

[1581] Example 1

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

[1583] Conventional online shopping systems have difficulty accurately understanding a user's intent and suggesting appropriate products when the user makes ambiguous inquiries in natural language. Furthermore, there are limited means for effectively using user feedback to improve the accuracy of suggestions. As a result, users often spend a lot of time before receiving a recommendation for a product that is just right for them. This invention aims to significantly improve the user's search and purchasing process by quickly and accurately suggesting optimal products in response to ambiguous inquiries in natural language.

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

[1585] In this invention, the server includes: means for accepting an ambiguous inquiry in natural language from a user; means including a natural language processing module for analyzing the inquiry and identifying the user's intention; means for acquiring the user's past behavioral history and interest information from a database and analyzing the user's preferences; means for searching for optimal products and generating suggested candidates based on the analysis results; means for presenting the suggested candidates to the user; means for receiving a response from the user and updating a machine learning model to improve suggestion accuracy; means for transmitting data from a terminal to the server; means for the server to select optimal product information from the search results and generate a suggestion message; and means for the terminal to receive the suggestion message and display it to the user. This makes it possible to make appropriate product suggestions in response to ambiguous user inquiries and further improve suggestion accuracy based on user feedback.

[1586] An "ambiguous natural language query" refers to a user inputting a vague request in natural language without providing clear and specific instructions.

[1587] A "natural language processing module" is a software component that analyzes the natural language input by the user and identifies their intent.

[1588] "Behavioral history" is data that records information about actions such as purchases and browsing that a user has performed in the past.

[1589] "Interest information" refers to information about the interests and preferences that a user has previously shown.

[1590] A "database" is an information system for efficiently managing and searching large amounts of data.

[1591] "Preferences" refers to information that reflects a user's preferences and interests.

[1592] "Suggested candidates" is a list of product candidates that are proposed to the user, generated based on the user's request and the analysis results.

[1593] "Response" refers to the feedback and actions that users take regarding the proposed products.

[1594] A "machine learning model" refers to an algorithm or its implementation that learns from data and makes predictions or classifications.

[1595] A "terminal" is an electronic device (e.g., smartphone, tablet, or PC) with which a user interacts.

[1596] A "server" is a central computer system for processing and managing data.

[1597] "Message" refers to text or information to be communicated to a user.

[1598] "Generation" is the process of creating new information or messages based on data and analytical results.

[1599] The present invention relates to a system that proposes optimal products in response to ambiguous inquiries made by users in natural language. The purpose of the present invention is to significantly improve the process by which users efficiently search for and purchase products.

[1600] System Configuration

[1601] The CuraAI system consists of the following main components:

[1602] 1. User Interface (Terminal)

[1603] 2. Backend Processing Server (Server)

[1604] 3. Natural Language Processing Module

[1605] 4. User Profile Database

[1606] 5. Product Database

[1607] 6. Machine Learning Models

[1608] User Interface (Terminal)

[1609] The terminal provides an interface for users to input queries in natural language. Users can input vague requests such as "I want the latest trending gadgets" through the application. The terminal is responsible for sending this input to the server. The specific software used is an application built with HTML and JavaScript. After the user has completed the input, the application prepares the data in JSON format and sends it to the server using an HTTP POST request.

[1610] Backend processing server (server)

[1611] The server plays a central role in receiving and parsing user input. Its responsibilities are to:

[1612] 1. Input Analysis

[1613] The server passes the user's input data to a natural language processing module and receives the analysis results, which uses Python's NLTK or SpaCy to parse the text and extract key keywords.

[1614] 2. Data Acquisition

[1615] The server uses SQL queries or a NoSQL database (e.g., MongoDB) to retrieve past purchase and browsing history from a user profile database, thereby understanding the user's preferences.

[1616] 3. Product Search

[1617] Based on the user profile and keywords, the server searches for the most suitable products from a product database, which contains details such as product names, prices, reviews, etc. For example, the server executes an SQL query to search for "the most popular gadgets these days."

[1618] 4. Proposal Message Generation

[1619] The server selects the most suitable product information from the search results and generates a message to suggest to the user, using a natural language generation (NLG) algorithm to construct a message such as, "How about these smart glasses?"

[1620] 5. Feedback Processing

[1621] The server receives feedback from users and stores it in a database, which is used to update the machine learning model.

[1622] Natural Language Processing Module

[1623] The natural language processing module is a software component that analyzes vague user queries sent from the server and identifies their intent. For example, it uses Python's NLTK and SpaCy to analyze text and extract the keywords "trending" and "gadget" from a query such as "I want a gadget that's popular these days."

[1624] User Profile Database

[1625] The user profile database stores information about each user's past purchase history, browsing history, and preferences. It is built using SQL or NoSQL database technology (e.g., MySQL, MongoDB), allowing for efficient information retrieval. This information is used to make personalized product suggestions for each user.

[1626] Product database

[1627] The product database stores all product information (e.g., product name, price, reviews, related products).

[1628] It uses SQL or NoSQL databases (e.g. PostgreSQL, Elasticsearch) to manage data and search for the right products based on user requests.

[1629] Machine learning models

[1630] The server updates the machine learning model based on user feedback to improve the accuracy of the suggestions. This model is trained using algorithms such as Scikit-learn and TensorFlow. The feedback data is used to train a new model, which is then reflected in the next suggestions.

[1631] Specific examples

[1632] For example, suppose a user uses a device to input "I want a gadget that's popular these days." The device sends this input information in JSON format to the server. The server analyzes the received input data using a natural language processing module and extracts key keywords. Next, it retrieves past purchase history from the user profile database and generates a search query. It searches for relevant products in the product database and generates an optimal suggestion message. This message is sent to the device, and a message is displayed to the user asking, "How about these smart glasses?" When the user presses the "I like it" button, that feedback is sent to the server and stored in the database. The server uses this feedback to update the machine learning model and improve the accuracy of the next suggestion.

[1633] Prompt Sentence Examples

[1634] "Please recommend the latest trending gadgets based on the user's preferences."

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

[1636] Step 1:

[1637] A user uses a terminal to input a query in natural language.

[1638] Specifically, the user enters "I want a gadget that's popular these days" into the application's text input field. This input is temporarily stored in the device's internal memory.

[1639] Input: A natural language query entered by a user into a text input field (e.g., "I want the latest trending gadgets").

[1640] Output: User input data temporarily stored on the device.

[1641] Step 2:

[1642] The terminal transmits the user's input data to the server.

[1643] Specifically, the terminal uses the JavaScript fetch API to issue an HTTP POST request that sends the input data in JSON format.

[1644] Input: User input data (JSON format) temporarily saved on the device.

[1645] Output: User-entered data sent to the server.

[1646] Step 3:

[1647] The server receives the user's inquiry data and passes the data to the natural language processing module.

[1648] Specifically, the server parses the received JSON data and uses Python's NLTK or SpaCy to analyze the text and extract key keywords.

[1649] Input: User-entered data sent to the server (JSON format).

[1650] Output: Parsed keywords (e.g. "trend", "gadget").

[1651] Step 4:

[1652] The server retrieves past behavioral history from a user profile database.

[1653] Specifically, the server executes an SQL query (e.g., "SELECT FROM user_profiles WHERE user_id = '12345'") to retrieve the user's profile information, including past purchase data and search history.

[1654] Input: Parsed keywords, user ID.

[1655] Output: Retrieved user profile information (purchase data, search history).

[1656] Step 5:

[1657] The server searches for the most suitable product from the product database.

[1658] Specifically, the server executes an SQL query (e.g., "SELECT FROM products WHERE category = 'gadgets' AND trending = 1") to retrieve product information.

[1659] Input: Parsed keywords, user profile information.

[1660] Output: Searched product data (product name, price, reviews, etc.).

[1661] Step 6:

[1662] The server generates a proposal message.

[1663] Specifically, the server uses a natural language generation algorithm to construct a suggestion message (e.g., "How about these smart glasses?").

[1664] Input: Searched product data.

[1665] Output: The generated proposal message.

[1666] Step 7:

[1667] The terminal receives the proposal message from the server and displays it to the user.

[1668] Specifically, the device parses the received JSON data and renders the proposed message in HTML format, which the user can view on the application screen.

[1669] Input: The proposal message sent by the server (in JSON format).

[1670] Output: The suggestion message that is displayed to the user.

[1671] Step 8:

[1672] The user provides feedback on the proposed product.

[1673] Specifically, the user clicks a button such as "I like it" or "I want to see more suggestions." The device records this feedback.

[1674] Input: User feedback input (click operation).

[1675] Output: Feedback data recorded on the device.

[1676] Step 9:

[1677] The terminal transmits the user's feedback data to the server.

[1678] Specifically, the device again uses the JavaScript fetch API to send feedback data in JSON format.

[1679] Input: Recorded feedback data (JSON format).

[1680] Output: Feedback data sent to the server.

[1681] Step 10:

[1682] The server receives the feedback data and updates the machine learning model.

[1683] Specifically, the server stores the feedback data in a database, inputs it as new training data into the machine learning model, and retrains the model using an algorithm (e.g., Scikit-learn or TensorFlow).

[1684] Input: Feedback data sent to the server, existing training data.

[1685] Output: An updated machine learning model.

[1686] (Application example 1)

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

[1688] Conventional systems have difficulty in suggesting optimal products in response to users' vague natural language queries. Furthermore, they lack the precision to quickly suggest appropriate products based on users' preferences and past purchase history. As a result, users have to spend a lot of time searching for products, making the purchasing process inefficient.

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

[1690] In this invention, the server includes: means for accepting an inquiry in ambiguous natural language from a user; means including a natural language processing module for analyzing the inquiry and identifying the user's intention; means for retrieving the user's past purchase history and browsing history from a database and analyzing the user's preferences; means for searching for optimal products and generating suggested candidates based on the analysis results; means including a smartphone application for presenting the suggested candidates to the user; and means for receiving feedback from the user and updating a machine learning model to improve suggestion accuracy. This enables efficient and accurate product suggestions in response to ambiguous user inquiries.

[1691] The "means for accepting an inquiry in an ambiguous natural language from a user" is an interface for receiving an ambiguous request input by a user in a natural language.

[1692] The "means including a natural language processing module for analyzing the query and identifying the user's intention" is a module equipped with a natural language processing function for analyzing the user's query and understanding its intention.

[1693] The "means for acquiring the user's past purchase history and browsing history from a database and analyzing the user's preferences" is a function for acquiring the user's past behavioral data and estimating the user's preferences based on that data.

[1694] "Means for searching for optimal products and generating suggested candidates based on the analysis results" refers to a function for searching for related products and generating suggested candidates based on the analysis results of the natural language processing module and the user's preferences.

[1695] The "means including a smartphone application for presenting the proposal candidates to the user" is an application that runs on a smartphone for presenting the generated proposal candidates to the user.

[1696] "Means for receiving feedback from users and updating the machine learning model to improve the accuracy of suggestions" refers to a function for receiving feedback from users and updating the machine learning algorithm to improve the accuracy of suggestions based on that feedback.

[1697] This invention is a system for suggesting optimal products in response to a user's inquiry in ambiguous natural language. The system interacts with the user via a smartphone application, identifies the user's intent, and suggests products that are in line with that intent.

[1698] System Configuration

[1699] In an embodiment of the present invention, the system comprises the following components:

[1700] 1. Smartphone application

[1701] It provides an interface for users to input queries in natural language. For example, a user might input, "I want a smartphone that's popular these days."

[1702] 2. Backend Server

[1703] It acts as a central point for receiving and parsing user input. This server does the following:

[1704] The natural language processing module analyzes the user's ambiguous queries and identifies their intent.

[1705] The user's past purchase history and browsing history are obtained from the database and the user's preferences are analyzed.

[1706] The optimal product is searched for in the product database and proposal candidates are generated.

[1707] The proposed candidates are sent to a smartphone application and presented to the user.

[1708] Receive user feedback and update the machine learning model to improve the accuracy of suggestions.

[1709] Software and hardware used

[1710] Natural Language Processing Module: Transformers Library (Hugging Face)

[1711] Database: SQLite

[1712] Backend server: Flask (Python web framework)

[1713] Frontend: React Native (smartphone application)

[1714] System operation explanation

[1715] 1. Inquiry reception and analysis

[1716] A user inputs a vague query such as "I want a smartphone that is popular these days" through a smartphone application. This input is sent to the server.

[1717] The server sends the received query to a natural language processing module, tokenizes the input sentence, and obtains the analysis result.

[1718] 2. User profile acquisition and preference analysis

[1719] The server retrieves the user's past purchase history and browsing history from the database and analyzes the user's preferences.

[1720] 3. Product search and candidate suggestion generation

[1721] The server searches for the most suitable product from the product database based on the analysis results and the user's preference data.

[1722] Suggestion candidates are generated, sent to a smartphone application, and presented to the user.

[1723] 4. Receiving feedback and updating the machine learning model

[1724] The system receives user feedback on the presented suggested products, such as "I like this product" or "I'd like to see other options."

[1725] The server uses this feedback to update the machine learning model and improve the accuracy of its next proposal.

[1726] Specific examples

[1727] For example, a user opens a smartphone application and types, "I want a smartphone that's popular these days." The server receives this and analyzes it using a natural language processing module. The analysis results in the keywords "smartphone" and "latest trends." The server then retrieves the user's purchase history and browsing history from a database to understand the user's preferences. Based on these results, the most suitable smartphone is searched for and suggested from a product database. The suggestion is displayed to the user via the smartphone application, asking, "How about this new smartphone?" The user provides feedback on the presented product, and the results lead to improved suggestion accuracy next time.

[1728] Example prompt for a generative AI model:

[1729] "What are some popular smartphones? Please choose one taking into account the latest trends."

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

[1731] Step 1:

[1732] The user launches the smartphone application and enters a query.

[1733] Input: A user types a vague natural language query into a text field in an application, such as "I want a smartphone that's popular these days."

[1734] Output: The user's input text.

[1735] Specific actions: The user opens the application on their smartphone, enters a query in the text field, and presses the send button.

[1736] Step 2:

[1737] The terminal sends the user's input to the server.

[1738] Input: The text entered by the user.

[1739] Output: The user's input text as received by the server.

[1740] Specific operation: The terminal sends the entered text to the server as an HTTP request.

[1741] Step 3:

[1742] The server uses a natural language processing module to analyze the user's ambiguous query.

[1743] Input: The text entered by the user.

[1744] Output: Analysis results (e.g. keywords "smartphone" and "recent trends").

[1745] Specific operation: The server passes the received text to the natural language processing module, performs text analysis, and extracts keywords.

[1746] Step 4:

[1747] The server retrieves the user's past purchase history and browsing history from the database and analyzes their preferences.

[1748] Input: User's ID (e.g. 12345).

[1749] Output: Data on the user's past purchase and browsing history (e.g. "smartphone", "high-resolution camera", etc.).

[1750] Specific operation: The server executes a database query based on the user ID to obtain the user's purchase history and browsing history.

[1751] Step 5:

[1752] The server searches the product database for the most suitable product based on the analysis results and preference data.

[1753] Input: Analysis results (keywords) and user preference data.

[1754] Output: A list of the best products (e.g. "Latest high-resolution camera smartphones").

[1755] Specific operation: The server queries the product database using keywords and user preferences to list relevant products.

[1756] Step 6:

[1757] The server generates proposal candidates and sends them to the smartphone application.

[1758] Input: A list of best products.

[1759] Output: Suggestions to show to the user (e.g., "How about this latest smartphone?").

[1760] Specific operation: The server obtains detailed product data, generates a proposal message, and then sends it to the smartphone application.

[1761] Step 7:

[1762] The terminal presents the received proposal candidates to the user.

[1763] Input: A proposal candidate message.

[1764] Output: The proposal screen that is displayed to the user.

[1765] Specific operation: The terminal analyzes the proposal message received from the server and displays it on the user's screen.

[1766] Step 8:

[1767] The user provides feedback on the proposed product.

[1768] Input: User feedback (e.g., "I like this product" or "I'd like to see more suggestions").

[1769] Output: User feedback data.

[1770] Specific operation: The user inputs feedback about the presented product and sends it to the server via the terminal.

[1771] Step 9:

[1772] The server receives user feedback and updates the machine learning model.

[1773] Input: User feedback data.

[1774] Output: An updated machine learning model.

[1775] Specific operation: The server retrains the machine learning model based on the received feedback to improve the accuracy of the suggestions.

[1776] The above are the specific processing steps of the system.

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

[1778] The CuraAI system of this invention is a system that suggests optimal products in response to ambiguous inquiries from users in natural language. Furthermore, by combining it with an emotion engine that recognizes user emotions, it achieves more accurate and personalized product suggestions. The purpose of this invention is to improve the process by which users efficiently search for and purchase products.

[1779] System Configuration

[1780] The CuraAI system consists of the following main components:

[1781] 1. User Interface (Terminal)

[1782] 2. Backend Processing Server (Server)

[1783] 3. Natural Language Processing Module

[1784] 4. User Profile Database

[1785] 5. Product Database

[1786] 6. Machine Learning Models

[1787] 7. Emotion Engine

[1788] User Interface (Terminal)

[1789] The terminal provides an interface for users to input queries in natural language. Users can input vague requests such as "I want the latest trendy gadget" through the application. The terminal is responsible for sending this input and emotion engine data to the server.

[1790] Backend processing server (server)

[1791] The server plays a central role in receiving and analyzing user input and emotion data. Specifically, the server performs the following processes:

[1792] The user's vague query is sent to a natural language processing module for analysis.

[1793] Obtain past purchase and browsing history from the user's profile database.

[1794] Search for the best product from a product database based on the user's preferences.

[1795] Suggestions are generated and messages are constructed to present to the user.

[1796] Receive user feedback and sentiment data to update machine learning models.

[1797] Natural Language Processing Module

[1798] The natural language processing module is a software component that analyzes vague user queries sent from the server and identifies their intent. For example, if a query says, "I want a gadget that's popular these days," the module analyzes the keywords "gadget" and "popular" to identify the appropriate product category.

[1799] User Profile Database

[1800] The user profile database stores information about each user's past purchase history, browsing history, and preferences. This database is used to provide personalized product recommendations for each user.

[1801] Product database

[1802] The product database stores information on all products handled within the system, including detailed information such as product name, price, reviews, related products, etc. The server searches this database for the most suitable product based on the user's preferences and the analysis results from the natural language processing module.

[1803] Machine learning models

[1804] The machine learning model is a learning algorithm and its implementation that improves the accuracy of suggestions based on user feedback and emotional data. The server inputs user feedback (e.g., "I like it" or "I want to see other suggestions") and emotional data into the machine learning model to improve the accuracy of the next suggestion.

[1805] Emotion Engine

[1806] The emotion engine is a software component that recognizes emotions during natural language input from users. The emotion engine analyzes the user's text and voice input to identify their emotional state (e.g., happy, sad, excited, etc.). The server uses the recognized emotion data to optimize product recommendations.

[1807] Specific examples

[1808] For example, suppose a user uses a device to input, "I want a gadget that's popular these days." The device sends this input information and emotion data to the server. The server then sends the received input to a natural language processing module and receives the analysis results. It then retrieves the user's past purchase history from the user's profile database and analyzes their preferences. Next, it identifies "popular gadgets these days" from the product database and generates several suggestion candidates. Based on the output of the emotion engine, it adjusts the priority of the suggestion candidates and the wording of the message. It displays a suggestion message on the device (for example, "How about these smart glasses? They're a very popular product") and receives feedback and emotion data from the user. The server receives this feedback and emotion data and updates the machine learning model. This makes the next suggestion even more accurate.

[1809] The processing flow will be explained below.

[1810] Step 1:

[1811] Device: The user launches a CuraAI-enabled shopping app and is presented with an interface where they can type, "I want a gadget that's popular these days."

[1812] Step 2:

[1813] User: Type into the app in natural language, "I want a gadget that's popular these days."

[1814] Step 3:

[1815] Terminal: Along with user input, emotions are evaluated from voice and facial expressions, and emotional data is obtained through the emotion engine.

[1816] Step 4:

[1817] Terminal: Sends user input and emotion data to the server.

[1818] Step 5:

[1819] Server: Receives input and sends it to the natural language processing module to start the analysis.

[1820] Step 6:

[1821] Natural Language Processing module: Tokenizes the user query, extracts the keywords "gadget" and "trending" and identifies its meaning and intent.

[1822] Step 7:

[1823] Server: Receives the analysis results of the natural language processing module and clarifies the user's intent.

[1824] Step 8:

[1825] Server: Obtains the user's past purchase history and browsing history from the user profile database.

[1826] Step 9:

[1827] Server: Based on the acquired data, analyzes the user's preferences and identifies suitable product categories.

[1828] Step 10:

[1829] Server: Searches for relevant gadgets from the product database based on the user's preferences and the analysis results of the natural language processing module.

[1830] Step 11:

[1831] Server: Generates proposal candidates based on the acquired product information.

[1832] Step 12:

[1833] Server: Adjusts the priority of proposal candidates and message expressions based on the emotion data from the emotion engine.

[1834] Step 13:

[1835] Server: Generates a suggestion message that reflects the emotional data (e.g., "How about these smart glasses? Many people like them.") and sends it to the device.

[1836] Step 14:

[1837] Terminal: Displays suggested product information to the user.

[1838] Step 15:

[1839] User: Select feedback for the suggested product, such as "I like it" or "I'd like to see more options."

[1840] Step 16:

[1841] Terminal: Sends user feedback and re-evaluated emotion data to the server.

[1842] Step 17:

[1843] Server: Receives feedback and emotion data and stores it in a user profile database.

[1844] Step 18:

[1845] Server: Inputs feedback and sentiment data into the machine learning model and trains it to improve the accuracy of the next suggestion.

[1846] Step 19:

[1847] Server: Updates the system and prepares it for the next user session.

[1848] Example 2

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

[1850] With conventional systems, it was difficult to accurately identify the user's intent and make appropriate product suggestions when they made inquiries using ambiguous natural language. Furthermore, because suggestions were made without taking the user's emotions into consideration, the accuracy of personalized suggestions was low. This made it difficult for users to quickly and efficiently find the optimal product, resulting in a complicated purchasing process.

[1851] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.

[1852] In this invention, the server includes: means for accepting an inquiry from a user in ambiguous natural language; means including a natural language processing module for analyzing the inquiry and identifying the user's intention; means for retrieving the user's past purchase history and browsing history from a database and analyzing the user's preferences; means for searching for optimal products and generating candidate suggestions based on the analysis results; means including an emotion engine for recognizing the user's emotions and reflecting them in the content of suggestions; means for presenting the candidate suggestions to the user; and means for receiving feedback from the user and updating a machine learning model to improve suggestion accuracy. This makes it possible to accurately identify the user's intention in response to a user's ambiguous natural language inquiry and to make personalized product suggestions that take emotions into consideration.

[1853] A "user" is a person who uses the system to make an inquiry.

[1854] An "inquiry in ambiguous natural language" is a user's inquiry using natural language that includes non-specific expressions or unclear requests.

[1855] A "natural language processing module" is a software component that analyzes input natural language text and identifies its intent.

[1856] "User preferences" is information that indicates the user's tastes and areas of interest, and is analyzed based on the user's past purchase history and browsing history.

[1857] The "emotion engine" is a software component that analyzes the user's emotional state at the time of input and outputs the results.

[1858] "Suggestion candidates" are candidates for products or services that are generated based on the analysis results and are proposed to the user.

[1859] "Suggestion accuracy" is an indicator that indicates the accuracy and appropriateness of the suggestions that the system makes to the user.

[1860] A "machine learning model" is an algorithm and its implementation that self-learns based on data and improves the accuracy of its next proposal.

[1861] A "database" is a collection of related data stored in a structured manner, including user profiles, product information, and so on.

[1862] The "analysis result" is information about the meaning and intent of the user's inquiry analyzed by the natural language processing module.

[1863] The present invention is a system for responding to inquiries made by users in vague natural language and proposing optimal products. Specific embodiments of the system are described below.

[1864] First, the system of the present invention includes a "user interface (terminal)," a "backend processing server (server)," a "natural language processing module," a "user profile database," a "product database," a "machine learning model," and an "emotion engine."

[1865] User Interface (Terminal)

[1866] The user can use this terminal to input queries in natural language, for example, vague requests such as "I want a gadget that's popular these days." The terminal receives the user's input and emotion data from the emotion engine, and transmits them to the server.

[1867] Backend processing server (server)

[1868] The server receives the user's input data and emotion data sent from the terminal and performs the following processing.

[1869] The user's vague query is sent to a natural language processing module for analysis.

[1870] Obtain past purchase and browsing history from the user profile database.

[1871] Search for the best product from a product database based on the user's preferences.

[1872] Suggestions are generated and messages are constructed to present to the user.

[1873] Receive user feedback and sentiment data to update machine learning models.

[1874] Natural Language Processing Module

[1875] The natural language processing module analyzes vague user queries and identifies their intent. For example, this module extracts the keywords "gadget" and "recent trend" from a query such as "I want a gadget that's popular these days."

[1876] User Profile Database

[1877] The user profile database stores information about each user's past purchase history, browsing history, and preferences. This information is used to provide personalized product suggestions for each user.

[1878] Product database

[1879] The product database stores information on all products handled within the system, including detailed information such as product names, prices, reviews, and related products. The server searches this database for the most suitable product based on the analysis results of the natural language processing module and the user's preferences.

[1880] Machine learning models

[1881] The machine learning model is a learning algorithm and its implementation that improves the accuracy of suggestions based on user feedback and emotional data. The server inputs the received feedback and emotional data into the machine learning model to improve the accuracy of the next suggestion.

[1882] Emotion Engine

[1883] The emotion engine is a software component that recognizes emotions in a user's natural language input. The emotion engine analyzes the user's text input and identifies their emotional state. The emotion data is used by the server to optimize product suggestions.

[1884] Specific examples

[1885] For example, suppose a user uses a device to input, "I want a gadget that's popular these days." The device sends this input information and emotion data to the server. The server then sends the received input to a natural language processing module and receives the analysis results. It then retrieves the user's past purchase history from the user's profile database and analyzes their preferences. Next, it identifies "popular gadgets these days" from the product database and generates several suggestion candidates. Based on the output of the emotion engine, it adjusts the priority of the suggestion candidates and the wording of the message. It displays a suggestion message on the device (for example, "How about these smart glasses? They're a very popular product") and receives feedback and emotion data from the user. The server receives this feedback and emotion data and updates the machine learning model. This makes the next suggestion even more accurate.

[1886] Prompt Sentence Examples

[1887] "I want the latest gadget. I'm emotionally excited."

[1888] In this way, personalized product suggestions that take the user's emotions into consideration are realized.

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

[1890] Step 1:

[1891] A user uses a device to input a query in natural language. An example of an input is a vague request such as "I want a gadget that's popular these days." The user's input is sent to the device, which stores it for subsequent processing.

[1892] Input: User's natural language query

[1893] Output: User input data stored on the device

[1894] Step 2:

[1895] The device sends the user's input to the emotion engine to obtain emotion data. In this process, the emotion engine analyzes the emotion the user is feeling when inputting (e.g., excited, calm, etc.). The emotion engine performs text analysis to identify the emotional state.

[1896] Input: User-entered data

[1897] Output: Emotion data identified by the emotion engine

[1898] Step 3:

[1899] The terminal transmits the user's input data and emotion data to the back-end processing server, which allows the server to start the subsequent analysis process.

[1900] Input: User input data and emotion data

[1901] Output: Data sent to the server

[1902] Step 4:

[1903] The server sends the received input data to the natural language processing module for analysis. The natural language processing module analyzes the meaning of the input text and extracts keywords and important information. For example, from the text "I want a gadget that's popular these days," the keywords "gadget" and "recently popular" are extracted.

[1904] Input: User-entered data

[1905] Output: Parsed keywords and intent information

[1906] Step 5:

[1907] The server retrieves the user's past purchase history and browsing history from the user profile database, and analyzes the user's preferences based on this information.

[1908] Input: Parsed keywords and intent, user ID

[1909] Output: User preference information

[1910] Step 6:

[1911] The server searches for the most suitable product based on the analysis results and the user's preferences from the product database, which contains detailed product information, and extracts the relevant products from there.

[1912] Input: Analyzed keywords, user preference information

[1913] Output: List of target products

[1914] Step 7:

[1915] The server generates proposal candidates based on the generated target product list and emotion data, and creates messages to display on the user interface. The expression and priority of the proposal messages are adjusted based on the output of the emotion engine.

[1916] Input: Target product list, emotion data

[1917] Output: Proposal message

[1918] Step 8:

[1919] The terminal displays the proposal message received from the server to the user, who then checks the proposal message and provides feedback on its contents.

[1920] Input: Proposal message

[1921] Output: User feedback

[1922] Step 9:

[1923] The server inputs user feedback and emotion data into the machine learning model and updates the model, improving the accuracy of future suggestions.

[1924] Input: User feedback, emotional data

[1925] Output: Updated machine learning model

[1926] Through the above processing steps, optimal product suggestions that take into account the user's feelings are realized in response to the user's vague inquiries.

[1927] (Application example 2)

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

[1929] When users search for products using ambiguous natural language, they often have difficulty finding the right product. Furthermore, personalized recommendations based on the user's emotional state, past purchase history, and preferences are rare. Especially when it comes to product presentation in virtual spaces, more advanced technologies are needed to enrich the user experience.

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

[1931] In this invention, the server includes: means for accepting a user's inquiry in ambiguous natural language; means including a natural language processing module for analyzing the inquiry and identifying the user's intention; means for retrieving the user's past purchase history and browsing history from a database and analyzing the user's preferences; means for searching for optimal products and generating candidate suggestions based on the analysis results; means for presenting the candidate suggestions to the user; means for receiving feedback from the user and updating a machine learning model to improve suggestion accuracy; means for recognizing the user's emotions using an emotion engine and reflecting them in product suggestions; and display means for presenting products in a virtual space. This enables the user to receive personalized, optimal product suggestions based on their ambiguous inquiry in a virtual space.

[1932] "Ambiguous natural language" refers to a language that is composed of unclear, abstract expressions.

[1933] "Analyzing a query" means interpreting the intent and meaning of the natural language expression entered by the user and converting it into an appropriate action.

[1934] A "natural language processing module" is a software component that analyzes natural language input from a user and understands its meaning.

[1935] "Analyzing user preferences" means identifying products and services that a user prefers based on the user's past behavioral data and profile information.

[1936] The "optimal product" refers to the product that best matches the user's needs and preferences.

[1937] "Generating proposal candidates" means creating a list of products and services to present to the user based on the user's inquiry and feelings.

[1938] An "emotion engine" is a software component that identifies an emotional state from user input (text or voice).

[1939] "Virtual space" refers to an imaginary three-dimensional space generated by a computer system that transcends the physical constraints of the real world.

[1940] "Display means" refers to an interface for visually displaying information on the screen of a system or device.

[1941] A "machine learning model" is a mathematical model that uses data to train an algorithm and improve the accuracy of its recommendations.

[1942] "Feedback" refers to the opinions, evaluations, and reactions that users provide to the system.

[1943] The CuraAI system of this invention is a system that personalizes and suggests optimal products based on vague inquiries in natural language from users. This system consists of the following main hardware and software components:

[1944] Hardware and Software

[1945] Hardware

[1946] Head-mounted displays (e.g., general-purpose VR headsets)

[1947] Smartphone

[1948] software

[1949] Cloud services (e.g., general-purpose cloud hosting services)

[1950] Natural language processing modules (e.g., general-purpose natural language processing APIs)

[1951] Sentiment engine (e.g., general-purpose sentiment analysis API)

[1952] Databases (product database, user profile database)

[1953] Machine learning models (e.g., general-purpose machine learning libraries)

[1954] System Operation Overview

[1955] Terminal

[1956] The user wears a head-mounted display and logs into the virtual space. The device transmits the user's voice inquiry and emotion data to the server in real time.

[1957] server

[1958] The server analyzes the received natural language input and emotional data. It uses a natural language processing module to identify the user's intent and an emotional engine to recognize their emotional state. It then retrieves the user's past purchase history and preferences from a profile database and searches for suitable products from a product database. It then presents the generated suggestions to the user in a virtual space.

[1959] Data processing and calculation

[1960] Voice input and emotional data collection

[1961] The user's voice input and emotional data are sent from the head-mounted display to the server.

[1962] Natural Language Analysis and Emotion Recognition

[1963] The natural language processing module converts voice data into text and analyzes its intent, while the emotion engine identifies the emotional state from the input text.

[1964] Obtaining and analyzing user profile and product data

[1965] The system obtains preference information and past purchase history from the user's profile database, and searches for related products from the product database.

[1966] Generate and present product suggestions

[1967] Based on the user's preferences and emotional data, the most suitable products are selected and displayed in a virtual space.

[1968] Specific examples

[1969] 1. Hardware and Software

[1970] Hardware: General-purpose VR headset

[1971] Software: General-purpose cloud hosting service, general-purpose natural language processing API, general-purpose sentiment analysis API, product database, user profile database, general-purpose machine learning library

[1972] 2. Data Flow and Operations

[1973] Voice input: "Inside a generic VR headset, say, 'I want the latest trending gadget.'"

[1974] Output of analytical process results and product proposals

[1975] 3. Example prompts

[1976] Input: I want the latest trending gadgets

[1977] Task: Extract the main intent and potential categories for recommending products.

[1978] This system allows users to receive product suggestions based on their unique preferences and emotions through natural conversations in a virtual space. This process allows users to enjoy a more satisfying shopping experience.

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

[1980] Step 1:

[1981] The user wears a head-mounted display and logs into the virtual space. The user makes a voice inquiry in natural language, saying, "I want a gadget that's popular these days." The device collects the voice data and uses an emotion engine to analyze the user's emotional state (e.g., neutral, excited, amused, etc.). The voice data and emotion data are sent to the server in real time.

[1982] Step 2:

[1983] The server sends the voice data received from the device to a natural language processing module, which converts it into text. This text is then analyzed to identify the user's intent. For example, from the text "I want a gadget that's popular these days," the keywords "gadget" and "currently popular" are extracted. Based on this analysis, an appropriate search category is determined.

[1984] Step 3:

[1985] The server retrieves past purchase history and preference information from the user's profile database. This information is used to identify the user's preferences and interests based on the user's past purchases and browsing history. For example, if the user is particularly interested in gadgets, related products will be prioritized.

[1986] Step 4:

[1987] The server searches the product database for the most suitable products based on the user's preferences and analysis results. Based on identified keywords (e.g., "gadgets" or "current trends"), the server narrows down the search to highly relevant products. The server then generates a list of these products and compiles them as candidate suggestions.

[1988] Step 5:

[1989] The server uses the output of the emotion engine to prioritize the proposed products. For example, if it determines that the user is excited, it will emphasize the attractive features of the proposed product based on the user's level of excitement. It also adjusts the wording of the message. For example, it might use phrases such as, "This new gadget is very popular these days!"

[1990] Step 6:

[1991] The server sends the generated proposal candidates to the device and presents them to the user in the virtual space. The user checks the presented product information and selects the product they are interested in. The device then sends the user's selection and feedback to the server in real time.

[1992] Step 7:

[1993] The server receives user feedback and sentiment data and updates the machine learning model to improve the accuracy of future suggestions. For example, if a user expresses a strong interest in a particular product, products in that category will be prioritized in future suggestions.

[1994] This process allows users to receive relevant and personalized product suggestions even when they make vague natural language inquiries.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

[2016] The following is further disclosed regarding the above embodiment.

[2017] (Claim 1)

[2018] means for accepting ambiguous natural language queries from users;

[2019] means including a natural language processing module for analyzing the query and identifying user intent;

[2020] A means for acquiring the user's past purchase history and browsing history from a database and analyzing the user's preferences;

[2021] A means for searching for optimal products and generating proposal candidates based on the analysis results;

[2022] means for presenting the proposal candidates to a user;

[2023] a means of receiving user feedback and updating the machine learning model to improve the accuracy of the suggestions;

[2024] A system including:

[2025] (Claim 2)

[2026] 10. The system of claim 1, further comprising means for referencing a user's purchase history and browsing history to analyze the user's lifestyle and preferences.

[2027] (Claim 3)

[2028] 10. The system of claim 1, further comprising means for tokenizing and semantically analyzing the user's ambiguous query using a natural language processing module.

[2029] "Example 1"

[2030] (Claim 1)

[2031] means for accepting ambiguous natural language queries from users;

[2032] means including a natural language processing module for analyzing the query and identifying user intent;

[2033] A means for acquiring the user's past behavior history and interest information from a database and analyzing the user's preferences;

[2034] A means for searching for optimal products and generating proposal candidates based on the analysis results;

[2035] means for presenting the proposal candidates to a user;

[2036] A means of receiving user feedback and updating the machine learning model to improve the accuracy of the suggestions;

[2037] means for transmitting data from the terminal to the server;

[2038] A means for the server to select optimal product information from the search results and generate a proposal message;

[2039] means for the terminal to receive and display the suggestion message to the user;

[2040] A system including:

[2041] (Claim 2)

[2042] 2. The system according to claim 1, further comprising means for referring to the user's behavior history and interest information in order to analyze the user's lifestyle and preferences.

[2043] (Claim 3)

[2044] 2. The system according to claim 1, further comprising means for dividing a user's ambiguous query into small units and analyzing the meaning thereof using a natural language processing module.

[2045] "Application Example 1"

[2046] (Claim 1)

[2047] means for accepting ambiguous natural language queries from users;

[2048] means including a natural language processing module for analyzing the query and identifying user intent;

[2049] A means for acquiring the user's past purchase history and browsing history from a database and analyzing the user's preferences;

[2050] A means for searching for optimal products and generating proposal candidates based on the analysis results;

[2051] means including a smartphone application for presenting the proposal candidates to a user;

[2052] a means of receiving user feedback and updating the machine learning model to improve the accuracy of the suggestions;

[2053] A system including:

[2054] (Claim 2)

[2055] 10. The system of claim 1, further comprising means for referencing a user's purchase history and browsing history to analyze the user's lifestyle and preferences.

[2056] (Claim 3)

[2057] 10. The system of claim 1, further comprising means for tokenizing and semantically analyzing the user's ambiguous query using a natural language processing module.

[2058] (Claim 4)

[2059] The system according to claim 1, further comprising a system using a smartphone application for presenting the proposal candidates to a user.

[2060] "Example 2: Combining Emotion Engines"

[2061] (Claim 1)

[2062] means for accepting ambiguous natural language queries from users;

[2063] means including a natural language processing module for analyzing the query and identifying user intent;

[2064] A means for acquiring the user's past purchase history and browsing history from a database and analyzing the user's preferences;

[2065] A means for searching for optimal products and generating proposal candidates based on the analysis results;

[2066] means including an emotion engine for recognizing user emotions and reflecting them in suggestions;

[2067] means for presenting the proposal candidates to a user;

[2068] a means of receiving user feedback and updating the machine learning model to improve the accuracy of the suggestions;

[2069] A system including:

[2070] (Claim 2)

[2071] 10. The system of claim 1, further comprising means for referencing a user's purchase history and browsing history to analyze the user's lifestyle and preferences.

[2072] (Claim 3)

[2073] 10. The system of claim 1, further comprising means for tokenizing and semantically analyzing the user's ambiguous query using a natural language processing module.

[2074] "Application example 2 when combining emotion engines"

[2075] (Claim 1)

[2076] means for accepting ambiguous natural language queries from users;

[2077] means including a natural language processing module for analyzing the query and identifying user intent;

[2078] A means for acquiring the user's past purchase history and browsing history from a database and analyzing the user's preferences;

[2079] A means for searching for optimal products and generating proposal candidates based on the analysis results;

[2080] means for presenting the proposal candidates to a user;

[2081] a means of receiving user feedback and updating the machine learning model to improve the accuracy of the suggestions;

[2082] A means for recognizing user emotions using an emotion engine and reflecting them in product recommendations;

[2083] a display means for displaying products in a virtual space;

[2084] A system including:

[2085] (Claim 2)

[2086] 10. The system of claim 1, further comprising means for referencing a user's purchase history and browsing history to analyze the user's lifestyle and preferences.

[2087] (Claim 3)

[2088] 10. The system of claim 1, further comprising means for tokenizing and semantically analyzing the user's ambiguous query using a natural language processing module. [Explanation of symbols]

[2089] 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. means for accepting ambiguous natural language queries from users; means including a natural language processing module for analyzing the query and identifying user intent; A means for acquiring the user's past purchase history and browsing history from a database and analyzing the user's preferences; A means for searching for optimal products and generating proposal candidates based on the analysis results; means for presenting the proposal candidates to a user; a means of receiving user feedback and updating the machine learning model to improve the accuracy of the suggestions; A system including:

2. The system of claim 1 , further comprising means for referencing a user's purchase history and browsing history to analyze the user's lifestyle and preferences.

3. 10. The system of claim 1, further comprising means for tokenizing and semantically analyzing the user's ambiguous query using a natural language processing module.

Citation Information

Patent Citations

  • Persona chatbot control method and system

    JP2022180282A