System
The system addresses the challenge of finding suitable food stalls by using natural language processing and generative AI to provide interactive and dialect-specific recommendations, enhancing user experience and accuracy.
Patent Information
- Application Number
- JP2024122838
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-07-29
- Publication Date
- 2026-02-10
Smart Images

Figure 2026021156000001_ABST
Abstract
Description
[Technical Field]
[0001] The technology of the present disclosure relates to a system. [Background technology]
[0002] Patent document 1 discloses a persona chatbot control method performed by at least one processor, the method including the steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to a description of the chatbot character, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Publication No. 2022-180282 Summary of the Invention [Problem to be solved by the invention]
[0004] It is difficult for food stall users to easily find a food stall that meets their needs. In particular, in areas visited for the first time or in areas with many food stalls, it is difficult to obtain appropriate information, and users have to take the time to look up information about each food stall. Furthermore, when information services are provided in a general format, they often lack a sense of familiarity and enjoyment for users. There is a need to solve these issues and improve the user experience when providing food stall-finding services. [Means for solving the problem]
[0005] The present invention solves these problems by providing a system that includes: a means for receiving a message from a user; a means for analyzing the message using natural language processing technology and extracting keywords; a means for searching a database based on the keywords to obtain multiple candidates; a generation AI means for selecting the optimal candidate from the candidates; and a means for notifying the user of the selected candidate in a preset dialect. The system of the present invention allows users to easily find a food stall that meets their needs and obtain information in a friendly, interactive format. Furthermore, the use of generation AI can improve the accuracy of selecting the optimal food stall, thereby increasing user satisfaction.
[0006] A "user" is a person who uses the system and seeks particular information or services.
[0007] A "message" is a text or voice message that a user sends to the system.
[0008] "Natural language processing technology" is a general term for technologies that allow computers to understand, analyze, and extract meaning from human language.
[0009] "Keywords" are key words or phrases extracted from a message that serve as indicators for search and analysis.
[0010] A "database" is a collection of information that is systematically organized and stored in a format that allows for searching and updating.
[0011] "Candidates" are multiple options selected from a database based on the user's requests.
[0012] "Generative AI means" refers to a technical means for selecting the most suitable option from multiple candidates using artificial intelligence.
[0013] "Means of notification" refers to the method or technology used to communicate selected information to the user.
[0014] A "dialect" is a type of vocabulary or pronunciation of a language that is rooted in a particular region or culture.
[0015] A "messaging application" is software or an application that allows the exchange of text and / or voice messages.
[0016] "Requests" refer to specific conditions or wishes that users have for the system. [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] overview
[0039] The present invention is a system that allows users to easily search for food stalls that meet certain conditions, such as a specific area, type of cuisine, and price range. This system uses a generative AI means to recommend the most suitable food stall, and can also communicate information to users in a dialogue format with the personality of a regular customer who speaks Hakata dialect. Specific embodiments of the system are described below.
[0040] System Configuration
[0041] This system mainly consists of the following parts:
[0042] 1. User Device
[0043] 2. Server
[0044] 3. Natural Language Processing Technology
[0045] 4. Database
[0046] 5. Generation AI means
[0047] 6. Means of notification
[0048] 1. User Device
[0049] A user device is a device used by a user to input and send messages using a LINE Official Account, such as a smartphone, tablet, or PC.
[0050] 2. Server
[0051] The server is a central computer system that receives messages sent from user devices, analyzes them, and processes them using database searches and generation AI methods. The server is connected to user devices via a network.
[0052] 3. Natural Language Processing Technology
[0053] Natural language processing technology runs on the server and analyzes messages from users to extract necessary keywords. For example, the keywords "Nakasu" and "ramen" are extracted from a user message such as "Tell me about a good ramen stand in Nakasu tonight."
[0054] 4. Database
[0055] The database stores information about food stalls. This information consists of attributes such as area, type of food, price range, and review rating. Appropriate candidates are retrieved from the database according to the user's request.
[0056] 5. Generation AI means
[0057] The generative AI method is used to select the best one from multiple candidates retrieved from the database, for example, by taking into account the stall's review ratings and the user's past preferences to select the most suitable stall.
[0058] 6. Means of notification
[0059] The notification method provides users with information about the selected food stalls in a dialogue format in Hakata dialect. Providing information in a user-friendly manner improves the user experience. For example, a message such as "I recommend this, so come and have a drink at Hakata Food Stall Yoshi-chan" is generated and sent to users via the official LINE account.
[0060] Specific examples
[0061] 1. Submitting a User Request
[0062] The user sends a message via the official LINE account saying, "Please tell me where I can find a good ramen stand in Nakasu." The user's device receives this message and sends it to the server.
[0063] 2. Message Analysis
[0064] The server analyzes the received message using natural language processing technology and extracts the keywords "Nakasu" and "ramen."
[0065] 3. Database Search
[0066] The server searches the database based on the extracted keywords, and finds 10 food stalls that match the criteria "Nakasu" and "ramen."
[0067] 4. Selecting the best food stall
[0068] The server inputs the 10 candidates into the generation AI means and selects the most suitable food stall taking into consideration evaluation reviews, price range, etc. The generation AI means selects "Hakata Yatai Yoshi-chan" as the most suitable food stall.
[0069] 5. Notification of recommended food stalls
[0070] The server then provides the selected food stall information to the user in a dialogue format in Hakata dialect. A message such as "I recommend this place, so why not grab a drink at Hakata Food Stall Yoshi-chan" is generated and sent to the user via the official LINE account.
[0071] Through the above embodiments, the present invention helps users easily find suitable and satisfying food stalls and provides information in a friendly, interactive manner.
[0072] The processing flow will be explained below.
[0073] Specific processing steps of the program
[0074] Step 1:
[0075] The user enters a message. The user sends a message to the LINE official account, such as "Tell me about a good ramen stand in Nakasu."
[0076] Step 2:
[0077] The device receives the message. The LINE server receives the message from the user and sends it to the analysis server.
[0078] Step 3:
[0079] The server receives the message. The analysis server receives the message data from the LINE server.
[0080] Step 4:
[0081] The server performs natural language processing. The analysis server uses natural language processing technology to analyze the received message and extract the keywords "Nakasu" and "ramen."
[0082] Step 5:
[0083] The server generates a search query. Based on the keywords extracted by the analysis server, a search query is generated for the food stall database. Example: "Area = 'Nakasu' AND Cuisine = 'Ramen' AND Rating > 4"
[0084] Step 6:
[0085] The server searches the database. The server sends the generated query to the database and retrieves candidates that match the conditions "Nakasu" and "ramen" from the database.
[0086] Step 7:
[0087] The server receives the search results. The server receives the candidate list obtained from the database.
[0088] Step 8:
[0089] The server calls the generation AI, and the analysis server inputs the search result data into the generation AI and instructs it to select the best candidate.
[0090] Step 9:
[0091] Generative AI evaluates the data. Generative AI evaluates each stall on the candidate list and selects the most suitable stall, taking into account reviews and price range.
[0092] Step 10:
[0093] The server obtains the AI's selection results. The analysis server receives the optimal food stall information selected by the generation AI (e.g., Hakata Food Stall Yoshi-chan).
[0094] Step 11:
[0095] The server generates a message in Hakata dialect. The analysis server uses the selected food stall information to generate a conversational message in Hakata dialect. Example: "I recommend this, so let's have a drink at Hakata Food Stall Yoshi-chan."
[0096] Step 12:
[0097] The server sends the message to the user's device. The message generated by the analysis server is sent to the user's device via the LINE server.
[0098] Step 13:
[0099] The device notifies the user of the message. The user's device displays the message received from the LINE server.
[0100] Through the above steps, the user can easily obtain information about food stalls that meet his or her needs and receive the information in a friendly, interactive format.
[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 food stall search systems have difficulty in quickly and accurately providing information that matches the user's requirements, resulting in issues with the accuracy of search results and user experience. In addition, the information provided is expressed in general standard Japanese, which lacks the familiarity specific to the region.
[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 receiving input from a user, means for analyzing the input using natural language processing technology to obtain important extracted information, and means for searching information sources based on the extracted information to obtain multiple results. This makes it possible to quickly and accurately provide information that matches the user's requirements, and improves the user experience by providing friendly notifications in local languages.
[0106] The "means for receiving input from the user" is a function that provides an interface for the user to input requests to the system and transmits the input information to the server.
[0107] "Natural language processing technology" is a technology for analyzing received user input and extracting important information and keywords.
[0108] "Important extracted information" refers to keywords and phrases necessary for search and processing, extracted from user input using natural language processing technology.
[0109] The "means for searching information sources" is a function for querying a specific database or information resource based on the extracted information and searching for relevant information therein.
[0110] The "means for obtaining multiple results" is a function for obtaining multiple candidate information items that meet the conditions and are obtained when searching information sources.
[0111] A "generative AI model" is an artificial intelligence model that selects the optimal candidate from multiple obtained results.
[0112] "Regional words" are dialects and expressions used in a particular region, and are words that convey information in a user-friendly manner.
[0113] A "communication application" is application software for sending and receiving messages over the Internet.
[0114] An embodiment of the present invention is described below.
[0115] This system allows users to easily search for food stalls that fit specific criteria, such as area, type of cuisine, price range, etc. The system uses a generative AI model to recommend the most suitable food stalls and can communicate information to users in a dialogue format using local language.
[0116] System Configuration
[0117] The system mainly consists of the following elements:
[0118] 1. User Device
[0119] 2. Server
[0120] 3. Natural Language Processing Engine
[0121] 4. Database
[0122] 5. Generative AI Models
[0123] 6. Means of notification
[0124] 1. User Device
[0125] A user device is a device that users use to input and send messages. This includes smartphones, tablets, and PCs. For example, you can send a message using a LINE official account.
[0126] 2. Server
[0127] The server is a central computer system that receives messages sent from user devices, analyzes them, and processes them using database searches and generative AI methods. The server communicates with user devices via the Internet.
[0128] 3. Natural Language Processing Engine
[0129] The natural language processing engine running on the server analyzes messages from users and extracts necessary keywords. For example, from a user message such as "Tell me about a good ramen stand in Nakasu tonight," the engine extracts the keywords "Nakasu" and "ramen."
[0130] 4. Database
[0131] The database stores information about food stalls, which consist of attributes such as area, type of food, price range, and review rating. Based on the user's request, the system retrieves suitable candidates from the database.
[0132] 5. Generative AI Models
[0133] The generative AI model is used to select the best one from multiple candidates retrieved from the database, for example, taking into account the stall's review ratings and the user's past preferences to select the most suitable stall.
[0134] 6. Means of notification
[0135] The notification method will provide users with information about the selected food stall in a local language. For example, a message such as "I recommend this, so come and have a drink at Hakata Food Stall Yoshi-chan" will be generated and sent to users via the official LINE account.
[0136] Specific examples
[0137] 1. Submitting a User Request
[0138] The user sends a message via the official LINE account saying, "Please tell me where I can find a good ramen stand in Nakasu." The user's device receives this message and sends it to the server.
[0139] 2. Message Analysis
[0140] The server analyzes the received message using a natural language processing engine and extracts the keywords "Nakasu" and "ramen."
[0141] 3. Database Search
[0142] The server searches the database based on the extracted keywords, and finds multiple food stalls that match the criteria "Nakasu" and "ramen."
[0143] 4. Selecting the best food stall
[0144] The server inputs multiple candidates into the generative AI model and selects the most suitable food stall, taking into consideration factors such as reviews and price range. The generative AI model selects "Hakata Yatai Yoshichan" as the most suitable food stall.
[0145] 5. Notification of recommended food stalls
[0146] The server provides the selected food stall information to the user in the region's language, generating a message such as "I recommend this place, so come have a drink at Hakata Food Stall Yoshi-chan" and sending it to the user via the official LINE account.
[0147] Prompt Sentence Examples
[0148] "When a user sends a message on LINE saying, 'Please tell me where to find a delicious ramen stall in Nakasu,' please explain how you would analyze this message and how you would select the most suitable stall and provide the information."
[0149] Through the above embodiments, the present invention helps users easily find suitable and satisfying food stalls and provides information in a friendly, interactive manner.
[0150] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0151] Step 1: Submitting a User Request
[0152] A user sends a message through a LINE official account that includes a specific area and type of cuisine. The user's device inputs this message into the LINE Platform, which then sends it to the server. The input is, for example, a message like "Please tell me where I can find a good ramen stand in Nakasu," and the output is that this message is sent to the server via the LINE Platform.
[0153] Specific behavior:
[0154] The user launches the LINE app.
[0155] Enter your request in the message input field and press the send button.
[0156] Step 2: Receiving a message
[0157] The server receives messages sent from user devices via the Internet. At this stage, the server retrieves the messages using the LINE Official Account API and temporarily stores them. The input is the message sent by the user, and the output is the message stored in the server's message queue.
[0158] Specific behavior:
[0159] The server periodically checks for new messages.
[0160] Receives messages and adds them to queues that it manages.
[0161] Step 3: Parse the message
[0162] The server analyzes the received message using a natural language processing engine (e.g., SpaCy or NLTK) and extracts important keywords. The input is the received message, and the output is the extracted keywords "Nakasu" and "Ramen."
[0163] Specific behavior:
[0164] Start the natural language processing engine.
[0165] Tokenize the message and perform entity identification.
[0166] Keywords are extracted and saved for database searching.
[0167] Step 4: Database Search
[0168] The server searches the database based on the extracted keywords. It generates an SQL query to retrieve data that matches the criteria. The input is the extracted keywords "Nakasu" and "ramen," and the output is a list of information about the corresponding food stalls.
[0169] Specific behavior:
[0170] Establish a database connection (e.g. MySQL, PostgreSQL).
[0171] Generate SQL queries to search the database.
[0172] Search results are temporarily stored.
[0173] Step 5: Select the best stall
[0174] The server calls a generative AI model (e.g., GPT-4) and inputs the search result stall information and evaluation criteria. The generative AI model then recommends the optimal stall based on this. The input is the search result list and evaluation criteria, and the output is the optimal stall, "Hakata Yatai Yoshichan."
[0175] Specific behavior:
[0176] Invoke a generative AI model.
[0177] Provide input data to the model and perform the model's operations.
[0178] Select the best candidate from the model.
[0179] Step 6: Notification of recommended food stalls
[0180] The server notifies the user of the selected food stall information in the region's specific language. It generates a message using the LINE official account's API and sends it to the user. The input is the optimal food stall information "Hakata Yatai Yoshi-chan," and the output is a message written in the region's specific language, "This is my recommendation, so come and have a drink at Hakata Yatai Yoshi-chan."
[0181] Specific behavior:
[0182] Generate standard phrases in Hakata dialect using a generative AI model.
[0183] Send messages using the LINE Official Account API.
[0184] Through the above processing steps, the user can easily obtain information about food stalls that meet the user's requirements, and can receive the information in a friendly, interactive format.
[0185] (Application example 1)
[0186] 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."
[0187] There is a lack of a system that allows users to easily find information about food stalls and other restaurants in a specific area. As a result, users have to spend a lot of time and effort to find the right option from the many options available. Furthermore, if the information provided is not user-friendly, the user experience may be impaired.
[0188] 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.
[0189] In this invention, the server includes means for receiving a request from a user, means for analyzing the request using natural language processing technology and extracting conditions, means for searching a database based on the conditions and obtaining multiple options, generation AI means for selecting the optimal option from the options, means for notifying the user of the selected option in a predetermined regional dialect, and means for providing the user with information about the selected option in an interactive format. This enables the user to quickly find the optimal restaurant that meets their requirements and receive information in a friendly interactive format.
[0190] "Means for receiving requests from a user" refers to the function of providing an interface for a user to input specific requests or wishes and sending the input data to a server.
[0191] "Means of analyzing and extracting conditions using natural language processing technology" refers to the technical process of analyzing the user's input text and identifying necessary keywords and requirements.
[0192] "Means for searching a database based on conditions and obtaining multiple options" refers to the process of searching a database for information that matches the extracted conditions and obtaining multiple candidates accordingly.
[0193] "Generative AI means for selecting optimal options" refers to the process of using artificial intelligence to select the most suitable candidate from multiple obtained options based on the user's requirements and evaluation criteria.
[0194] "Means of notifying the user in a pre-set regional dialect" refers to a function that conveys information about selected candidates to the user in a dialect used in a specific region.
[0195] The term "means for providing information to a user in an interactive manner" refers to a method for providing information through interactive communication with a user.
[0196] "Communications application" refers to a software platform that enables users to exchange messages and obtain information.
[0197] This invention is a system that allows users to easily search for food stalls and restaurants that meet specific criteria, such as area, type of cuisine, and price range, and receive that information in a user-friendly manner. This system is composed of a user terminal, a server, natural language processing technology, a database, a generation AI means, a notification means, and a dialogue means.
[0198] User terminal
[0199] The user terminal is typically a smartphone, tablet, or PC, and provides an interface for the user to input their specific needs and wishes, allowing the user to easily input and submit their request.
[0200] server
[0201] The server is a central computer system that receives and analyzes requests sent from user terminals. The server has the following functions:
[0202] Natural language processing technology: Using the OpenAI API, we analyze user requests and extract necessary keywords and conditions.
[0203] Database search: Using an SQLite database, search for food stall and restaurant information that matches the analyzed conditions.
[0204] Generative AI means: Select the most suitable candidate from the multiple options obtained based on the user's requirements and evaluation criteria.
[0205] Notification method: Information about the selected candidate is notified to the user through a communication application in the dialect used in the specific region.
[0206] Interaction means: Provide information through interactive communication with the user.
[0207] Natural language processing technology explained
[0208] The server receives messages from users and analyzes them using natural language processing technology. Specifically, it uses the OpenAI API to analyze the text and extract necessary keywords (e.g., "Nakasu" or "ramen").
[0209] Database Search Description
[0210] Based on the analyzed keywords, the server searches an SQLite database to retrieve information on multiple relevant food stalls and restaurants, including details such as area, type of cuisine, price range, and review ratings.
[0211] Description of Generative AI Method
[0212] The server inputs the obtained multiple options into the generation AI (OpenAI API) and selects the best candidate based on the user's past preferences and evaluation criteria. For example, "Hakata Yatai Yoshichan" is selected based on review ratings and price range.
[0213] Description of notification and interaction methods
[0214] The server then provides the user with information about the selected candidates in a dialect such as Hakata dialect. For example, a message such as "Hey, what do you recommend? Let's grab a drink at Hakata Yatai Yoshi-chan" is generated and sent to the user via a communication application such as LINE. Additionally, when the user asks additional questions via interactive means, the server provides friendly information in a similar manner.
[0215] Specific examples
[0216] When a user sends a request such as "Tell me about a good ramen stall in Nakasu," the server uses natural language processing technology to extract the keywords "Nakasu" and "ramen." It then searches for relevant stall information in an SQLite database, and uses a generation AI to select "Hakata Yatai Yoshi-chan" as the best candidate. It then generates a message in Hakata dialect saying, "I recommend this place, so let's have a drink at Hakata Yatai Yoshi-chan," and notifies the user via LINE.
[0217] Prompt Sentence Examples
[0218] "Generate a message for the user with the personality of a regular customer who speaks Hakata dialect.
[0219] Conditions: Recommended food stall "Hakata Yatai Yoshichan"
[0220] Prompt: "My friend recommended that we have a drink at Hakata Yatai Yoshi-chan."
[0221] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0222] Step 1:
[0223] Users use the smartphone app or LINE official account to enter and submit requests related to a specific area, cuisine, and price range.
[0224] Input: User request data (e.g., "Tell me about a good ramen stand in Nakasu.")
[0225] Output: The request data sent to the server
[0226] Step 2:
[0227] The server receives the request from the user and analyzes it using natural language processing technology.
[0228] Input: User request data
[0229] Output: Extracted keywords (e.g. "Nakasu" "Ramen")
[0230] What it does: It uses the OpenAI API to analyze the text of the request and extract important keywords.
[0231] Step 3:
[0232] The server searches the SQLite database based on keywords and retrieves information on multiple food stalls.
[0233] Input: Extracted keywords (e.g., "Nakasu" and "Ramen")
[0234] Output: A list of relevant stall information (e.g., multiple stall candidates)
[0235] Specific operation: Execute SQLite database query to search and retrieve stall information matching keywords.
[0236] Step 4:
[0237] The server inputs the acquired stall information into the generation AI and selects the most suitable candidate.
[0238] Input: List of food stall information, user's past preference information (e.g., review rating, price range)
[0239] Output: Optimal food stall information (e.g. "Hakata Food Stall Yoshichan")
[0240] Specific operation: Using a generative AI model (OpenAI API), the optimal stall is selected from a list of candidates based on evaluation criteria.
[0241] Step 5:
[0242] The server notifies the user of the selected food stall information in a local dialect such as Hakata dialect.
[0243] Input: Best food stall information
[0244] Output: A notification message written in a dialect (e.g., "My recommendation: grab a drink at Hakata Yatai Yoshi-chan.")
[0245] Specific operation: Using generative AI, the selected food stall information is expressed in a friendly manner in the local dialect, and a message is generated.
[0246] Step 6:
[0247] The server generates a notification message and sends it to the user via a communication application such as LINE.
[0248] Input: Notification message written in dialect
[0249] Output: Notification message displayed on the user's terminal
[0250] Specific behavior: Uses the LINE Messaging API to send the generated dialect message to the user's LINE account.
[0251] 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.
[0252] overview
[0253] This invention relates to a system that provides food stall information tailored to the user's needs. In particular, it uses a generative AI to select the most suitable food stall, an emotion engine to recognize the user's emotions, and provides information according to the emotions. This system notifies the user of information in a friendly dialogue format, improving the user experience.
[0254] System Configuration
[0255] The system consists of the following parts:
[0256] 1. User Device
[0257] 2. Server
[0258] 3. Natural Language Processing Technology
[0259] 4. Database
[0260] 5. Generation AI means
[0261] 6. Emotion Engine
[0262] 7. Means of notification
[0263] 1. User Device
[0264] A user device is a device used by a user to input and send messages using a LINE Official Account, such as a smartphone, tablet, or PC.
[0265] 2. Server
[0266] The server is a central computer system that receives messages sent from user devices, analyzes them, and processes them using database searches and generation AI methods. The server is connected to user devices via a network.
[0267] 3. Natural Language Processing Technology
[0268] Natural language processing technology runs on the server and analyzes messages from users to extract necessary keywords. For example, the keywords "Nakasu" and "ramen" are extracted from a user message such as "Tell me about a good ramen stand in Nakasu."
[0269] 4. Database
[0270] The database stores information about food stalls. This information consists of attributes such as area, type of food, price range, and review rating. Appropriate candidates are retrieved from the database according to the user's request.
[0271] 5. Generation AI means
[0272] The generative AI method is used to select the best one from multiple candidates retrieved from the database, taking into account review ratings and users' past preferences to select the best stall.
[0273] 6. Emotion Engine
[0274] The emotion engine is a technology that analyzes the user's emotional state from their messages and reactions. Based on the results of this analysis, the tone and style of the notification content can be adjusted. For example, if the user is in a happy mood, a cheerful message will be generated, and if the user is depressed, a gentler message will be generated.
[0275] 7. Means of notification
[0276] The notification method notifies the user of the selected food stall information in a dialogue format in Hakata dialect and in a tone that reflects the user's emotions. By delivering information in a user-friendly manner, the user experience is improved. For example, a message such as "Here's my recommendation, come have a drink at Hakata Food Stall Yoshi-chan" is generated and sent to the user via the official LINE account.
[0277] Specific examples
[0278] 1. Submitting a User Request
[0279] Users can send a message via the official LINE account saying, "Please tell me where I can find a good ramen stand in Nakasu."
[0280] 2. Message Analysis
[0281] The server analyzes the received message using natural language processing technology and extracts the keywords "Nakasu" and "ramen."
[0282] 3. Database Search
[0283] The server searches the database based on the extracted keywords, and finds 10 food stalls that match the criteria "Nakasu" and "ramen."
[0284] 4. Selecting the best food stall
[0285] The server inputs the 10 candidates into the generation AI means and selects the most suitable food stall taking into consideration evaluation reviews, price range, etc. The generation AI means selects "Hakata Yatai Yoshi-chan" as the most suitable food stall.
[0286] 5. User sentiment analysis
[0287] The server uses an emotion engine to analyze the user's emotional state from the message: if the user is in a happy state, it generates a message with a light tone.
[0288] 6. Notification of recommended food stalls
[0289] The server notifies the user of the selected food stall information in Hakata dialect, using a tone that reflects the user's emotions. For example, a message such as "I recommend this place, so come and have a drink at Hakata Food Stall Yoshi-chan" is generated and sent to the user via the official LINE account.
[0290] Through the above-described embodiments, the present invention helps users easily find suitable and satisfying food stalls, provides information in a friendly and interactive manner, and further improves individual user experience by providing information according to the user's emotions.
[0291] The processing flow will be explained below.
[0292] Specific processing steps of the program
[0293] Step 1:
[0294] The user enters a message. The user sends a message to the LINE official account saying, "Tell me about a good ramen stand in Nakasu."
[0295] Step 2:
[0296] The device receives the message. The LINE server receives the message from the user and sends it to the analysis server.
[0297] Step 3:
[0298] The server receives the message. The analysis server receives the message data from the LINE server.
[0299] Step 4:
[0300] The server performs natural language processing. The analysis server uses natural language processing technology to analyze the received message and extract the keywords "Nakasu" and "ramen."
[0301] Step 5:
[0302] The server generates a search query. Based on the keywords extracted by the analysis server, a search query is generated for the food stall database. Example: "Area = 'Nakasu' AND Cuisine = 'Ramen' AND Rating > 4"
[0303] Step 6:
[0304] The server searches the database. The server sends the generated query to the database and retrieves candidates that match the conditions "Nakasu" and "ramen" from the database.
[0305] Step 7:
[0306] The server receives the search results. The server receives the candidate list obtained from the database.
[0307] Step 8:
[0308] The server calls the generation AI, and the analysis server inputs the search result data into the generation AI and instructs it to select the best candidate.
[0309] Step 9:
[0310] Generative AI evaluates the data. Generative AI evaluates each stall on the candidate list and selects the most suitable stall, taking into account reviews and price range.
[0311] Step 10:
[0312] The server obtains the AI's selection results. The analysis server receives the optimal food stall information selected by the generation AI (e.g., Hakata Food Stall Yoshi-chan).
[0313] Step 11:
[0314] The server calls the emotion engine, and the analysis server inputs the user's message and past interactions into the emotion engine, instructing it to analyze the user's emotional state.
[0315] Step 12:
[0316] Emotion engine evaluates the emotional state: The emotion engine analyzes the content of the user's message and identifies the user's current emotional state (e.g., happy, sad, surprised, etc.).
[0317] Step 13:
[0318] The server generates a message based on the user's emotions. The analysis server uses the selected food stall information to generate a message in Hakata dialect with a tone and style that matches the user's emotional state. Example: "I recommend this place, so let's have a drink at Hakata Food Stall Yoshi-chan."
[0319] Step 14:
[0320] The server sends the message to the user's device. The message generated by the analysis server is sent to the user's device via the LINE server.
[0321] Step 15:
[0322] The device notifies the user of the message. The user's device displays the message received from the LINE server.
[0323] As a specific example of processing, if the user is in a happy state, the emotion engine generates a message with a "cheerful tone that makes you smile all the time." Conversely, if the user is sad, the message is adjusted to a "warm tone."
[0324] Through the above steps, the present invention allows users to easily obtain information about food stalls that meet their needs and receive information in a friendly, interactive format. Furthermore, by using an emotion engine, it is possible to provide information that corresponds to the user's emotions, improving the individual user experience.
[0325] Example 2
[0326] 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."
[0327] Conventional food stall information systems are unable to automatically select appropriate keywords when extracting the information users are looking for, and do not take the user's emotional state into consideration when providing information, making it difficult to provide the highly accurate information users desire. Furthermore, due to a lack of familiarity, the quality of the user experience has not been sufficiently improved. There is a need to solve these problems.
[0328] 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.
[0329] In this invention, the server includes means for receiving information from a user, means for analyzing the information using natural language processing technology and extracting keywords, means for searching a database based on the keywords and acquiring candidates, artificial intelligence generation means for selecting the most suitable candidate from the acquired candidates, means for notifying the user of the selected candidate in a predetermined dialect, and emotion analysis means for analyzing the user's emotional state and adjusting the content of the notification. This makes it possible to provide the user with highly accurate information that they desire, and also to provide friendly information that is responsive to the user's emotions.
[0330] "Means for receiving information from users" refers to interfaces and systems for receiving text or voice messages sent by users. Specifically, this refers to communication protocols and applications for exchanging information between smartphones or computers and servers.
[0331] "Natural language processing technology" refers to computer technology for understanding and analyzing human language. Specifically, it includes algorithms and software libraries for extracting important keywords and context from text.
[0332] "Keyword extraction means" refers to technologies and systems that analyze information received from users and identify important words and phrases that can be used as search and processing criteria.
[0333] "Means for searching a database and retrieving candidates" refers to the technology and system for searching for and retrieving appropriate data from stored information based on extracted keywords. Specifically, this includes database management systems and their search queries.
[0334] "Generative artificial intelligence means" refers to machine learning models and algorithms that generate results that best fit specific conditions based on input data. For example, it is a type of generative AI model.
[0335] "Dialect notification means" refers to technologies and systems that notify users of selected information in language that is familiar to a particular region or culture.
[0336] "Emotion analysis means" refers to technologies and systems that analyze users' comments and reactions and identify their emotional state (happiness, sadness, anger, etc.). Specifically, this includes text analysis algorithms and emotion recognition software.
[0337] MODE FOR CARRYING OUT THE INVENTION
[0338] This invention is a system that provides appropriate food stall information in response to a user's request, and is an interactive information provision system that notifies information taking into account the user's emotional state. Below, we will show how this system can be implemented in concrete terms.
[0339] overview
[0340] This system consists of a user terminal, a server, natural language processing technology, a database, a generative AI means, an emotion engine, and a notification means. This allows users to easily obtain appropriate and satisfying food stall information and receive it in a friendly, interactive format.
[0341] Hardware and software used
[0342] User devices: devices such as smartphones, tablets, and computers
[0343] Server: Cloud server (Amazon Web Services, Google Cloud Platform, etc.)
[0344] Natural language processing technology: Python's NLTK library, spaCy, etc.
[0345] Database: MySQL, PostgreSQL
[0346] Generative AI method: OpenAI's GPT-3
[0347] Emotion analysis technology: IBM Watson Tone Analyzer
[0348] Notification method: LINE API
[0349] Detailed processing
[0350] 1. Submitting a User Request:
[0351] A user sends a message via the LINE official account saying, "Please tell me where I can find a good ramen stand in Nakasu." By opening the LINE app on the user's device, typing and sending the message, this request is sent to the server.
[0352] 2. Message analysis:
[0353] The server receives messages from users and analyzes them using natural language processing technology (e.g., spaCy). Through this analysis, important keywords such as "Nakasu" and "ramen" are extracted.
[0354] 3. Search for food stall information:
[0355] The server searches the database based on the extracted keywords. For example, it generates an SQL query and executes it against the database (MySQL or PostgreSQL) to retrieve information about food stalls that match the criteria "Nakasu" and "ramen."
[0356] 4. Selecting the best stall:
[0357] The server inputs the acquired food stall information into a generation AI method (OpenAI's GPT-3) to select the most suitable food stall. At this time, additional information such as review ratings and price range is also used as evaluation criteria. GPT-3 selects "Hakata Yatai Yoshi-chan" as the best candidate.
[0358] 5. User sentiment analysis:
[0359] The server uses an emotion engine (IBM Watson Tone Analyzer) to analyze the user's message and determine the user's emotional state. This analysis reveals that the user is in a state of joy.
[0360] 6. Notification of recommended food stalls:
[0361] The server generates a message in Hakata dialect based on the selected food stall information, in a tone that reflects the user's emotions. For example, it might say, "I recommend this place, so let's have a drink at Hakata Food Stall Yoshi-chan." This message is sent to the user's device via the LINE API.
[0362] Specific examples
[0363] A user sends a message to the LINE official account saying, "Please tell me where I can find a good ramen stall in Nakasu," and the server receives it. The server analyzes the message using natural language processing technology and extracts the keywords "Nakasu" and "ramen." It then searches the database based on the extracted keywords and uses AI to generate the most suitable stall from the stall information that matches the criteria, selecting "Hakata Yatai Yoshi-chan." When the emotion engine analyzes that the user's emotion is joy, the server generates a message in Hakata dialect saying, "I recommend this, so come and have a drink at Hakata Yatai Yoshi-chan," and notifies the user via the LINE official account.
[0364] In this way, the present invention allows users to easily find a suitable and satisfying stall, and provides friendly information according to their emotions.
[0365] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0366] System program processing flow
[0367] Step 1:
[0368] Receiving messages from users
[0369] Input: The user enters the message "Please tell me where to find a good ramen stand in Nakasu" into the LINE app and presses the send button.
[0370] Specific operation: A user sends a message to the LINE official account. This message is sent to the server via the network.
[0371] Output: The server receives the message from the user.
[0372] Step 2:
[0373] Message Parsing
[0374] Input: A message received by the server saying "Please tell me where I can find a good ramen stand in Nakasu."
[0375] How it works: The server analyzes the message using natural language processing technology (such as Python's NLTK library or spaCy). Through the analysis, keywords such as "Nakasu" and "ramen" are extracted.
[0376] Output: The server extracts the keywords ("Nakasu" and "ramen").
[0377] Step 3:
[0378] Search the food stall information database
[0379] Input: Extracted keywords "Nakasu" and "Ramen".
[0380] Specific operation: The server generates and executes an SQL query against the database. For example, it uses a query such as "SELECT FROM food stall information WHERE area = 'Nakasu' AND cuisine = 'Ramen'".
[0381] Output: The server retrieves stall information that matches the conditions (for example, 10 items).
[0382] Step 4:
[0383] Selection of the best food stall
[0384] Input: Information on 10 food stalls retrieved from the database.
[0385] Specific operation: The server generates a prompt sentence for the generative AI means (OpenAI's GPT-3) and inputs the stall information. It creates a prompt sentence that includes elements such as "past review ratings" and "price range."
[0386] Output: The generation AI outputs “Hakata Yatai Yoshi-chan” as the optimal food stall.
[0387] Step 5:
[0388] User sentiment analysis
[0389] Input: The user's first message: "Can you tell me where to find a good ramen stand in Nakasu?"
[0390] Specific operation: The server uses an emotion engine (IBM Watson Tone Analyzer) to analyze the user's message. Through the analysis, it determines that the user is in the emotional state of "joy."
[0391] Output: The server gets the emotion analysis result (happiness state).
[0392] Step 6:
[0393] Notification of recommended food stalls
[0394] Input: Optimal food stall information "Hakata Food Stall Yoshi-chan" and emotion analysis results (happiness state).
[0395] Specific operation: The server generates a message in Hakata dialect based on this information. For example, it generates a message with the following content: "I recommend this, so let's have a drink at Hakata Yatai Yoshi-chan." The generated message is sent to the user's device using the LINE API.
[0396] Output: The user receives a message in the LINE app containing information about "Hakata Yatai Yoshichan."
[0397] summary
[0398] These steps realize a system that provides users with the accurate food stall information they desire and notifies them in a friendly, interactive format.
[0399] (Application example 2)
[0400] 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."
[0401] In conventional information provision systems, there are methods for selecting the most suitable candidate according to the user's request, but the information provided does not take into account the user's emotional state. As a result, the provided information may not be appropriate for the user's emotions, which has led to a problem of not sufficiently improving the user experience.
[0402] The identification process by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for receiving a message from a user, means for analyzing the message using natural language processing technology and extracting keywords, means for searching a database based on the keywords and obtaining multiple candidates, generation AI means for selecting the most suitable candidate from the candidates, emotion engine means for analyzing the user's emotional state, and means for notifying the user of the selected candidate in a tone corresponding to the user's emotion. This makes it possible to provide appropriate information according to the user's emotional state, thereby improving the user experience.
[0403] The "means for receiving messages from users" is a function for receiving text or voice messages sent by users through the terminal.
[0404] "Natural language processing technology" is a technology that analyzes messages received from users, understands their meaning, and extracts important keywords.
[0405] The "means for searching the database" is a function for searching information in the database based on the extracted keywords and obtaining multiple matching candidates.
[0406] The "generative AI means" is an artificial intelligence function that selects the most suitable item from multiple searched candidates, taking into consideration review ratings, price range, location information, and the user's past preferences.
[0407] The "emotion engine means" is a function for analyzing the user's emotional state from their message and reaction, and adjusts the tone and style of the notification content according to the user's emotions.
[0408] The "means for notifying the selected candidate in a tone corresponding to the user's emotion" is a function for conveying the most suitable candidate to the user in an appropriate tone based on the user's emotional state analyzed by the emotion engine means.
[0409] MODE FOR CARRYING OUT THE INVENTION
[0410] The present invention is a system that provides information according to a user's request, and in particular, provides information adapted to the user's emotional state by using a generation AI and an emotion engine. A specific embodiment of the present invention will be described below.
[0411] 1. System Configuration
[0412] The system consists of the following parts:
[0413] User terminal: A device such as a smartphone, smart glasses, or head-mounted display that provides an interface for users to input messages and voice commands.
[0414] Server: A central computer system that receives, analyzes, and processes messages sent from user terminals. The server communicates with user terminals via a network.
[0415] Natural language processing technology: This technology runs on the server and analyzes messages from users to extract necessary keywords. For example, the BERT model or GPT model is used for this technology.
[0416] Database: A database that stores store information, user preference data, etc.
[0417] Generative AI methods: AI techniques used to select the best candidate from multiple candidates, including the GPT-3 model.
[0418] Emotion Engine: A technology for analyzing the emotional state of a user's messages and reactions. This is done using a sentiment analyzer.
[0419] Notification method: A method of notifying information in a tone that corresponds to the user's emotions, such as LINE or other messaging applications.
[0420] 2. Program processing content
[0421] Receiving and analyzing
[0422] The server receives messages and voice commands sent from the user's device. For example, a user might send a request such as, "Please tell me about a recommended cafe near X station." The server analyzes this message using natural language processing technology and extracts the keywords "X station" and "cafe."
[0423] Database search
[0424] The server searches the database based on the extracted keywords. For example, 20 store listings matching the criteria "X station" and "cafe" are found.
[0425] Candidate selection
[0426] Next, the server inputs the 20 candidates into the generation AI means, which selects the best one by taking into consideration review ratings, price range, location information, the user's past preferences, etc. The generation AI means selects "Cafe ABC" as the best store.
[0427] Sentiment analysis and notification
[0428] The server uses an emotion engine to analyze the user's emotional state from their messages and recent actions. If the user is in a positive mood, it generates a message with a cheerful tone. For example, the server might generate a message such as, "Good work! How about Cafe ABC near Station X? It has great reviews!" and notify the user via LINE or another messaging application.
[0429] 3. Specific Examples
[0430] Consider the case where a user sends a request saying, "Please tell me some recommended cafes near X Station." The server receives this request and extracts the keywords "X Station" and "cafe." As a result of the database search, 20 candidates are found, from which the AI generation method selects the most suitable store, "Cafe ABC." If the user is in good spirits, the server sends a cheerful message saying, "Good work! How about Cafe ABC near X Station? It has great reviews!"
[0431] In this way, the system of the present invention can provide appropriate information according to the user's needs and emotional state, thereby improving the user experience.
[0432] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0433] Step 1:
[0434] A user sends a request via smartphone or smart glasses, such as "Please tell me a recommended cafe near XX station." The user device sends this message to the server. The input is the user's message, and the output is the message sent to the server.
[0435] Step 2:
[0436] The server analyzes the received user message using natural language processing technology (e.g., the BERT model). Specifically, it extracts the keywords "XX Station" and "cafe" from the message. The input is the received message, and the output is the extracted keywords.
[0437] Step 3:
[0438] The server searches a database based on the extracted keywords. The database stores store information and user preference data. As a result of the search, 20 store listings that match the criteria are retrieved. The input is the keywords, and the output is the search results of multiple store listings.
[0439] Step 4:
[0440] The server inputs the 20 candidates into a generative AI method (e.g., GPT-3 model) and selects the optimal store by taking into consideration review ratings, price range, location information, and the user's past preferences. Specifically, the generative AI evaluates the data for each store and selects the optimal store, "Cafe ABC." The input is information about multiple stores, and the output is information about the optimal store.
[0441] Step 5:
[0442] The server uses an emotion engine to analyze the user's emotional state from their messages and recent actions. For example, an emotion analyzer identifies emotional states such as "cheerful" or "depressed" from a message. The input is the user's message, and the output is the analyzed emotional state.
[0443] Step 6:
[0444] The server generates notification content based on the optimal store information and the user's emotional state. Specifically, if the user is in good spirits, a cheerful message such as "Good work! How about Cafe ABC near Station X? It has great reviews!" is generated. The input is the optimal store information and the analyzed emotional state, and the output is the generated notification message.
[0445] Step 7:
[0446] The server sends the generated notification message to the user's device via LINE or other messaging applications. The user's device receives this message and displays it to the user. The input is the generated message, and the output is the message sent to the user's device.
[0447] The above are the specific processing steps of the system program that realizes this application example. This makes it possible to provide appropriate information according to the user's needs and emotional state, thereby improving the user experience.
[0448] 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.
[0449] 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.
[0450] 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.
[0451] [Second embodiment]
[0452] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0453] 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.
[0454] 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).
[0455] 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.
[0456] 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.
[0457] 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).
[0458] 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.
[0459] 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.
[0460] 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.
[0461] 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.
[0462] 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.
[0463] 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."
[0464] overview
[0465] The present invention is a system that allows users to easily search for food stalls that meet certain conditions, such as a specific area, type of cuisine, and price range. This system uses a generative AI means to recommend the most suitable food stall, and can also communicate information to users in a dialogue format with the personality of a regular customer who speaks Hakata dialect. Specific embodiments of the system are described below.
[0466] System Configuration
[0467] This system mainly consists of the following parts:
[0468] 1. User Device
[0469] 2. Server
[0470] 3. Natural Language Processing Technology
[0471] 4. Database
[0472] 5. Generation AI means
[0473] 6. Means of notification
[0474] 1. User Device
[0475] A user device is a device used by a user to input and send messages using a LINE Official Account, such as a smartphone, tablet, or PC.
[0476] 2. Server
[0477] The server is a central computer system that receives messages sent from user devices, analyzes them, and processes them using database searches and generation AI methods. The server is connected to user devices via a network.
[0478] 3. Natural Language Processing Technology
[0479] Natural language processing technology runs on the server and analyzes messages from users to extract necessary keywords. For example, the keywords "Nakasu" and "ramen" are extracted from a user message such as "Tell me about a good ramen stand in Nakasu tonight."
[0480] 4. Database
[0481] The database stores information about food stalls. This information consists of attributes such as area, type of food, price range, and review rating. Appropriate candidates are retrieved from the database according to the user's request.
[0482] 5. Generation AI means
[0483] The generative AI method is used to select the best one from multiple candidates retrieved from the database, for example, by taking into account the stall's review ratings and the user's past preferences to select the most suitable stall.
[0484] 6. Means of notification
[0485] The notification method provides users with information about the selected food stalls in a dialogue format in Hakata dialect. Providing information in a user-friendly manner improves the user experience. For example, a message such as "I recommend this, so come and have a drink at Hakata Food Stall Yoshi-chan" is generated and sent to users via the official LINE account.
[0486] Specific examples
[0487] 1. Submitting a User Request
[0488] The user sends a message via the official LINE account saying, "Please tell me where I can find a good ramen stand in Nakasu." The user's device receives this message and sends it to the server.
[0489] 2. Message Analysis
[0490] The server analyzes the received message using natural language processing technology and extracts the keywords "Nakasu" and "ramen."
[0491] 3. Database Search
[0492] The server searches the database based on the extracted keywords, and finds 10 food stalls that match the criteria "Nakasu" and "ramen."
[0493] 4. Selecting the best food stall
[0494] The server inputs the 10 candidates into the generation AI means and selects the most suitable food stall taking into consideration evaluation reviews, price range, etc. The generation AI means selects "Hakata Yatai Yoshi-chan" as the most suitable food stall.
[0495] 5. Notification of recommended food stalls
[0496] The server then provides the selected food stall information to the user in a dialogue format in Hakata dialect. A message such as "I recommend this place, so why not grab a drink at Hakata Food Stall Yoshi-chan" is generated and sent to the user via the official LINE account.
[0497] Through the above embodiments, the present invention helps users easily find suitable and satisfying food stalls and provides information in a friendly, interactive manner.
[0498] The processing flow will be explained below.
[0499] Specific processing steps of the program
[0500] Step 1:
[0501] The user enters a message. The user sends a message to the LINE official account, such as "Tell me about a good ramen stand in Nakasu."
[0502] Step 2:
[0503] The device receives the message. The LINE server receives the message from the user and sends it to the analysis server.
[0504] Step 3:
[0505] The server receives the message. The analysis server receives the message data from the LINE server.
[0506] Step 4:
[0507] The server performs natural language processing. The analysis server uses natural language processing technology to analyze the received message and extract the keywords "Nakasu" and "ramen."
[0508] Step 5:
[0509] The server generates a search query. Based on the keywords extracted by the analysis server, a search query is generated for the food stall database. Example: "Area = 'Nakasu' AND Cuisine = 'Ramen' AND Rating > 4"
[0510] Step 6:
[0511] The server searches the database. The server sends the generated query to the database and retrieves candidates that match the conditions "Nakasu" and "ramen" from the database.
[0512] Step 7:
[0513] The server receives the search results. The server receives the candidate list obtained from the database.
[0514] Step 8:
[0515] The server calls the generation AI, and the analysis server inputs the search result data into the generation AI and instructs it to select the best candidate.
[0516] Step 9:
[0517] Generative AI evaluates the data. Generative AI evaluates each stall on the candidate list and selects the most suitable stall, taking into account reviews and price range.
[0518] Step 10:
[0519] The server obtains the AI's selection results. The analysis server receives the optimal food stall information selected by the generation AI (e.g., Hakata Food Stall Yoshi-chan).
[0520] Step 11:
[0521] The server generates a message in Hakata dialect. The analysis server uses the selected food stall information to generate a conversational message in Hakata dialect. Example: "I recommend this, so let's have a drink at Hakata Food Stall Yoshi-chan."
[0522] Step 12:
[0523] The server sends the message to the user's device. The message generated by the analysis server is sent to the user's device via the LINE server.
[0524] Step 13:
[0525] The device notifies the user of the message. The user's device displays the message received from the LINE server.
[0526] Through the above steps, the user can easily obtain information about food stalls that meet his or her needs and receive the information in a friendly, interactive format.
[0527] Example 1
[0528] 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."
[0529] Conventional food stall search systems have difficulty in quickly and accurately providing information that matches the user's requirements, resulting in issues with the accuracy of search results and user experience. In addition, the information provided is expressed in general standard Japanese, which lacks the familiarity specific to the region.
[0530] 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.
[0531] In this invention, the server includes means for receiving input from a user, means for analyzing the input using natural language processing technology to obtain important extracted information, and means for searching information sources based on the extracted information to obtain multiple results. This makes it possible to quickly and accurately provide information that matches the user's requirements, and improves the user experience by providing friendly notifications in local languages.
[0532] The "means for receiving input from the user" is a function that provides an interface for the user to input requests to the system and transmits the input information to the server.
[0533] "Natural language processing technology" is a technology for analyzing received user input and extracting important information and keywords.
[0534] "Important extracted information" refers to keywords and phrases necessary for search and processing, extracted from user input using natural language processing technology.
[0535] The "means for searching information sources" is a function for querying a specific database or information resource based on the extracted information and searching for relevant information therein.
[0536] The "means for obtaining multiple results" is a function for obtaining multiple candidate information items that meet the conditions and are obtained when searching information sources.
[0537] A "generative AI model" is an artificial intelligence model that selects the optimal candidate from multiple obtained results.
[0538] "Regional words" are dialects and expressions used in a particular region, and are words that convey information in a user-friendly manner.
[0539] A "communication application" is application software for sending and receiving messages over the Internet.
[0540] An embodiment of the present invention is described below.
[0541] This system allows users to easily search for food stalls that fit specific criteria, such as area, type of cuisine, price range, etc. The system uses a generative AI model to recommend the most suitable food stalls and can communicate information to users in a dialogue format using local language.
[0542] System Configuration
[0543] The system mainly consists of the following elements:
[0544] 1. User Device
[0545] 2. Server
[0546] 3. Natural Language Processing Engine
[0547] 4. Database
[0548] 5. Generative AI Models
[0549] 6. Means of notification
[0550] 1. User Device
[0551] A user device is a device that users use to input and send messages. This includes smartphones, tablets, and PCs. For example, you can send a message using a LINE official account.
[0552] 2. Server
[0553] The server is a central computer system that receives messages sent from user devices, analyzes them, and processes them using database searches and generative AI methods. The server communicates with user devices via the Internet.
[0554] 3. Natural Language Processing Engine
[0555] The natural language processing engine running on the server analyzes messages from users and extracts necessary keywords. For example, from a user message such as "Tell me about a good ramen stand in Nakasu tonight," the engine extracts the keywords "Nakasu" and "ramen."
[0556] 4. Database
[0557] The database stores information about food stalls, which consist of attributes such as area, type of food, price range, and review rating. Based on the user's request, the system retrieves suitable candidates from the database.
[0558] 5. Generative AI Models
[0559] The generative AI model is used to select the best one from multiple candidates retrieved from the database, for example, taking into account the stall's review ratings and the user's past preferences to select the most suitable stall.
[0560] 6. Means of notification
[0561] The notification method will provide users with information about the selected food stall in a local language. For example, a message such as "I recommend this, so come and have a drink at Hakata Food Stall Yoshi-chan" will be generated and sent to users via the official LINE account.
[0562] Specific examples
[0563] 1. Submitting a User Request
[0564] The user sends a message via the official LINE account saying, "Please tell me where I can find a good ramen stand in Nakasu." The user's device receives this message and sends it to the server.
[0565] 2. Message Analysis
[0566] The server analyzes the received message using a natural language processing engine and extracts the keywords "Nakasu" and "ramen."
[0567] 3. Database Search
[0568] The server searches the database based on the extracted keywords, and finds multiple food stalls that match the criteria "Nakasu" and "ramen."
[0569] 4. Selecting the best food stall
[0570] The server inputs multiple candidates into the generative AI model and selects the most suitable food stall, taking into consideration factors such as reviews and price range. The generative AI model selects "Hakata Yatai Yoshichan" as the most suitable food stall.
[0571] 5. Notification of recommended food stalls
[0572] The server provides the selected food stall information to the user in the region's language, generating a message such as "I recommend this place, so come have a drink at Hakata Food Stall Yoshi-chan" and sending it to the user via the official LINE account.
[0573] Prompt Sentence Examples
[0574] "When a user sends a message on LINE saying, 'Please tell me where to find a delicious ramen stall in Nakasu,' please explain how you would analyze this message and how you would select the most suitable stall and provide the information."
[0575] Through the above embodiments, the present invention helps users easily find suitable and satisfying food stalls and provides information in a friendly, interactive manner.
[0576] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0577] Step 1: Submitting a User Request
[0578] A user sends a message through a LINE official account that includes a specific area and type of cuisine. The user's device inputs this message into the LINE Platform, which then sends it to the server. The input is, for example, a message like "Please tell me where I can find a good ramen stand in Nakasu," and the output is that this message is sent to the server via the LINE Platform.
[0579] Specific behavior:
[0580] The user launches the LINE app.
[0581] Enter your request in the message input field and press the send button.
[0582] Step 2: Receiving a message
[0583] The server receives messages sent from user devices via the Internet. At this stage, the server retrieves the messages using the LINE Official Account API and temporarily stores them. The input is the message sent by the user, and the output is the message stored in the server's message queue.
[0584] Specific behavior:
[0585] The server periodically checks for new messages.
[0586] Receives messages and adds them to queues that it manages.
[0587] Step 3: Parse the message
[0588] The server analyzes the received message using a natural language processing engine (e.g., SpaCy or NLTK) and extracts important keywords. The input is the received message, and the output is the extracted keywords "Nakasu" and "Ramen."
[0589] Specific behavior:
[0590] Start the natural language processing engine.
[0591] Tokenize the message and perform entity identification.
[0592] Keywords are extracted and saved for database searching.
[0593] Step 4: Database Search
[0594] The server searches the database based on the extracted keywords. It generates an SQL query to retrieve data that matches the criteria. The input is the extracted keywords "Nakasu" and "ramen," and the output is a list of information about the corresponding food stalls.
[0595] Specific behavior:
[0596] Establish a database connection (e.g. MySQL, PostgreSQL).
[0597] Generate SQL queries to search the database.
[0598] Search results are temporarily stored.
[0599] Step 5: Select the best stall
[0600] The server calls a generative AI model (e.g., GPT-4) and inputs the search result stall information and evaluation criteria. The generative AI model then recommends the optimal stall based on this. The input is the search result list and evaluation criteria, and the output is the optimal stall, "Hakata Yatai Yoshichan."
[0601] Specific behavior:
[0602] Invoke a generative AI model.
[0603] Provide input data to the model and perform the model's operations.
[0604] Select the best candidate from the model.
[0605] Step 6: Notification of recommended food stalls
[0606] The server notifies the user of the selected food stall information in the region's specific language. It generates a message using the LINE official account's API and sends it to the user. The input is the optimal food stall information "Hakata Yatai Yoshi-chan," and the output is a message written in the region's specific language, "This is my recommendation, so come and have a drink at Hakata Yatai Yoshi-chan."
[0607] Specific behavior:
[0608] Generate standard phrases in Hakata dialect using a generative AI model.
[0609] Send messages using the LINE Official Account API.
[0610] Through the above processing steps, the user can easily obtain information about food stalls that meet the user's requirements, and can receive the information in a friendly, interactive format.
[0611] (Application example 1)
[0612] 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."
[0613] There is a lack of a system that allows users to easily find information about food stalls and other restaurants in a specific area. As a result, users have to spend a lot of time and effort to find the right option from the many options available. Furthermore, if the information provided is not user-friendly, the user experience may be impaired.
[0614] 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.
[0615] In this invention, the server includes means for receiving a request from a user, means for analyzing the request using natural language processing technology and extracting conditions, means for searching a database based on the conditions and obtaining multiple options, generation AI means for selecting the optimal option from the options, means for notifying the user of the selected option in a predetermined regional dialect, and means for providing the user with information about the selected option in an interactive format. This enables the user to quickly find the optimal restaurant that meets their requirements and receive information in a friendly interactive format.
[0616] "Means for receiving requests from a user" refers to the function of providing an interface for a user to input specific requests or wishes and sending the input data to a server.
[0617] "Means of analyzing and extracting conditions using natural language processing technology" refers to the technical process of analyzing the user's input text and identifying necessary keywords and requirements.
[0618] "Means for searching a database based on conditions and obtaining multiple options" refers to the process of searching a database for information that matches the extracted conditions and obtaining multiple candidates accordingly.
[0619] "Generative AI means for selecting optimal options" refers to the process of using artificial intelligence to select the most suitable candidate from multiple obtained options based on the user's requirements and evaluation criteria.
[0620] "Means of notifying the user in a pre-set regional dialect" refers to a function that conveys information about selected candidates to the user in a dialect used in a specific region.
[0621] The term "means for providing information to a user in an interactive manner" refers to a method for providing information through interactive communication with a user.
[0622] "Communications application" refers to a software platform that enables users to exchange messages and obtain information.
[0623] This invention is a system that allows users to easily search for food stalls and restaurants that meet specific criteria, such as area, type of cuisine, and price range, and receive that information in a user-friendly manner. This system is composed of a user terminal, a server, natural language processing technology, a database, a generation AI means, a notification means, and a dialogue means.
[0624] User terminal
[0625] The user terminal is typically a smartphone, tablet, or PC, and provides an interface for the user to input their specific needs and wishes, allowing the user to easily input and submit their request.
[0626] server
[0627] The server is a central computer system that receives and analyzes requests sent from user terminals. The server has the following functions:
[0628] Natural language processing technology: Using the OpenAI API, we analyze user requests and extract necessary keywords and conditions.
[0629] Database search: Using an SQLite database, search for food stall and restaurant information that matches the analyzed conditions.
[0630] Generative AI means: Select the most suitable candidate from the multiple options obtained based on the user's requirements and evaluation criteria.
[0631] Notification method: Information about the selected candidate is notified to the user through a communication application in the dialect used in the specific region.
[0632] Interaction means: Provide information through interactive communication with the user.
[0633] Natural language processing technology explained
[0634] The server receives messages from users and analyzes them using natural language processing technology. Specifically, it uses the OpenAI API to analyze the text and extract necessary keywords (e.g., "Nakasu" or "ramen").
[0635] Database Search Description
[0636] Based on the analyzed keywords, the server searches an SQLite database to retrieve information on multiple relevant food stalls and restaurants, including details such as area, type of cuisine, price range, and review ratings.
[0637] Description of Generative AI Method
[0638] The server inputs the obtained multiple options into the generation AI (OpenAI API) and selects the best candidate based on the user's past preferences and evaluation criteria. For example, "Hakata Yatai Yoshichan" is selected based on review ratings and price range.
[0639] Description of notification and interaction methods
[0640] The server then provides the user with information about the selected candidates in a dialect such as Hakata dialect. For example, a message such as "Hey, what do you recommend? Let's grab a drink at Hakata Yatai Yoshi-chan" is generated and sent to the user via a communication application such as LINE. Additionally, when the user asks additional questions via interactive means, the server provides friendly information in a similar manner.
[0641] Specific examples
[0642] When a user sends a request such as "Tell me about a good ramen stall in Nakasu," the server uses natural language processing technology to extract the keywords "Nakasu" and "ramen." It then searches for relevant stall information in an SQLite database, and uses a generation AI to select "Hakata Yatai Yoshi-chan" as the best candidate. It then generates a message in Hakata dialect saying, "I recommend this place, so let's have a drink at Hakata Yatai Yoshi-chan," and notifies the user via LINE.
[0643] Prompt Sentence Examples
[0644] "Generate a message for the user with the personality of a regular customer who speaks Hakata dialect.
[0645] Conditions: Recommended food stall "Hakata Yatai Yoshichan"
[0646] Prompt: "My friend recommended that we have a drink at Hakata Yatai Yoshi-chan."
[0647] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0648] Step 1:
[0649] Users use the smartphone app or LINE official account to enter and submit requests related to a specific area, cuisine, and price range.
[0650] Input: User request data (e.g., "Tell me about a good ramen stand in Nakasu.")
[0651] Output: The request data sent to the server
[0652] Step 2:
[0653] The server receives the request from the user and analyzes it using natural language processing technology.
[0654] Input: User request data
[0655] Output: Extracted keywords (e.g. "Nakasu" "Ramen")
[0656] What it does: It uses the OpenAI API to analyze the text of the request and extract important keywords.
[0657] Step 3:
[0658] The server searches the SQLite database based on keywords and retrieves information on multiple food stalls.
[0659] Input: Extracted keywords (e.g., "Nakasu" and "Ramen")
[0660] Output: A list of relevant stall information (e.g., multiple stall candidates)
[0661] Specific operation: Execute SQLite database query to search and retrieve stall information matching keywords.
[0662] Step 4:
[0663] The server inputs the acquired stall information into the generation AI and selects the most suitable candidate.
[0664] Input: List of food stall information, user's past preference information (e.g., review rating, price range)
[0665] Output: Optimal food stall information (e.g. "Hakata Food Stall Yoshichan")
[0666] Specific operation: Using a generative AI model (OpenAI API), the optimal stall is selected from a list of candidates based on evaluation criteria.
[0667] Step 5:
[0668] The server notifies the user of the selected food stall information in a local dialect such as Hakata dialect.
[0669] Input: Best food stall information
[0670] Output: A notification message written in a dialect (e.g., "My recommendation: grab a drink at Hakata Yatai Yoshi-chan.")
[0671] Specific operation: Using generative AI, the selected food stall information is expressed in a friendly manner in the local dialect, and a message is generated.
[0672] Step 6:
[0673] The server generates a notification message and sends it to the user via a communication application such as LINE.
[0674] Input: Notification message written in dialect
[0675] Output: Notification message displayed on the user's terminal
[0676] Specific behavior: Uses the LINE Messaging API to send the generated dialect message to the user's LINE account.
[0677] 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.
[0678] overview
[0679] This invention relates to a system that provides food stall information tailored to the user's needs. In particular, it uses a generative AI to select the most suitable food stall, an emotion engine to recognize the user's emotions, and provides information according to the emotions. This system notifies the user of information in a friendly dialogue format, improving the user experience.
[0680] System Configuration
[0681] The system consists of the following parts:
[0682] 1. User Device
[0683] 2. Server
[0684] 3. Natural Language Processing Technology
[0685] 4. Database
[0686] 5. Generation AI means
[0687] 6. Emotion Engine
[0688] 7. Means of notification
[0689] 1. User Device
[0690] A user device is a device used by a user to input and send messages using a LINE Official Account, such as a smartphone, tablet, or PC.
[0691] 2. Server
[0692] The server is a central computer system that receives messages sent from user devices, analyzes them, and processes them using database searches and generation AI methods. The server is connected to user devices via a network.
[0693] 3. Natural Language Processing Technology
[0694] Natural language processing technology runs on the server and analyzes messages from users to extract necessary keywords. For example, the keywords "Nakasu" and "ramen" are extracted from a user message such as "Tell me about a good ramen stand in Nakasu."
[0695] 4. Database
[0696] The database stores information about food stalls. This information consists of attributes such as area, type of food, price range, and review rating. Appropriate candidates are retrieved from the database according to the user's request.
[0697] 5. Generation AI means
[0698] The generative AI method is used to select the best one from multiple candidates retrieved from the database, taking into account review ratings and users' past preferences to select the best stall.
[0699] 6. Emotion Engine
[0700] The emotion engine is a technology that analyzes the user's emotional state from their messages and reactions. Based on the results of this analysis, the tone and style of the notification content can be adjusted. For example, if the user is in a happy mood, a cheerful message will be generated, and if the user is depressed, a gentler message will be generated.
[0701] 7. Means of notification
[0702] The notification method notifies the user of the selected food stall information in a dialogue format in Hakata dialect and in a tone that reflects the user's emotions. By delivering information in a user-friendly manner, the user experience is improved. For example, a message such as "Here's my recommendation, come have a drink at Hakata Food Stall Yoshi-chan" is generated and sent to the user via the official LINE account.
[0703] Specific examples
[0704] 1. Submitting a User Request
[0705] Users can send a message via the official LINE account saying, "Please tell me where I can find a good ramen stand in Nakasu."
[0706] 2. Message Analysis
[0707] The server analyzes the received message using natural language processing technology and extracts the keywords "Nakasu" and "ramen."
[0708] 3. Database Search
[0709] The server searches the database based on the extracted keywords, and finds 10 food stalls that match the criteria "Nakasu" and "ramen."
[0710] 4. Selecting the best food stall
[0711] The server inputs the 10 candidates into the generation AI means and selects the most suitable food stall taking into consideration evaluation reviews, price range, etc. The generation AI means selects "Hakata Yatai Yoshi-chan" as the most suitable food stall.
[0712] 5. User sentiment analysis
[0713] The server uses an emotion engine to analyze the user's emotional state from the message: if the user is in a happy state, it generates a message with a light tone.
[0714] 6. Notification of recommended food stalls
[0715] The server notifies the user of the selected food stall information in Hakata dialect, using a tone that reflects the user's emotions. For example, a message such as "I recommend this place, so come and have a drink at Hakata Food Stall Yoshi-chan" is generated and sent to the user via the official LINE account.
[0716] Through the above-described embodiments, the present invention helps users easily find suitable and satisfying food stalls, provides information in a friendly and interactive manner, and further improves individual user experience by providing information according to the user's emotions.
[0717] The processing flow will be explained below.
[0718] Specific processing steps of the program
[0719] Step 1:
[0720] The user enters a message. The user sends a message to the LINE official account saying, "Tell me about a good ramen stand in Nakasu."
[0721] Step 2:
[0722] The device receives the message. The LINE server receives the message from the user and sends it to the analysis server.
[0723] Step 3:
[0724] The server receives the message. The analysis server receives the message data from the LINE server.
[0725] Step 4:
[0726] The server performs natural language processing. The analysis server analyzes the received message using natural language processing technology and extracts the keywords "Nakasu" and "ramen."
[0727] Step 5:
[0728] The server generates a search query. Based on the keywords extracted by the analysis server, a search query is generated for the food stall database. Example: "Area = 'Nakasu' AND Cuisine = 'Ramen' AND Rating > 4"
[0729] Step 6:
[0730] The server searches the database. The server sends the generated query to the database and retrieves candidates that match the conditions "Nakasu" and "ramen" from the database.
[0731] Step 7:
[0732] The server receives the search results. The server receives the candidate list obtained from the database.
[0733] Step 8:
[0734] The server calls the generation AI, and the analysis server inputs the search result data into the generation AI and instructs it to select the best candidate.
[0735] Step 9:
[0736] Generative AI evaluates the data. Generative AI evaluates each stall on the candidate list and selects the most suitable stall, taking into account reviews and price range.
[0737] Step 10:
[0738] The server obtains the AI's selection results. The analysis server receives the optimal food stall information selected by the generation AI (e.g., Hakata Food Stall Yoshi-chan).
[0739] Step 11:
[0740] The server calls the emotion engine, and the analysis server inputs the user's message and past interactions into the emotion engine, instructing it to analyze the user's emotional state.
[0741] Step 12:
[0742] Emotion engine evaluates the emotional state: The emotion engine analyzes the content of the user's message and identifies the user's current emotional state (e.g., happy, sad, surprised, etc.).
[0743] Step 13:
[0744] The server generates a message based on the user's emotions. The analysis server uses the selected food stall information to generate a message in Hakata dialect with a tone and style that matches the user's emotional state. Example: "I recommend this place, so let's have a drink at Hakata Food Stall Yoshi-chan."
[0745] Step 14:
[0746] The server sends the message to the user's device. The message generated by the analysis server is sent to the user's device via the LINE server.
[0747] Step 15:
[0748] The device notifies the user of the message. The user's device displays the message received from the LINE server.
[0749] As a specific example of processing, if the user is in a happy state, the emotion engine generates a message with a "cheerful tone that makes you smile all the time." Conversely, if the user is sad, the message is adjusted to a "warm tone."
[0750] Through the above steps, the present invention allows users to easily obtain information about food stalls that meet their needs and receive information in a friendly, interactive format. Furthermore, by using an emotion engine, it is possible to provide information that corresponds to the user's emotions, improving the individual user experience.
[0751] Example 2
[0752] 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."
[0753] Conventional food stall information systems are unable to automatically select appropriate keywords when extracting the information users are looking for, and do not take the user's emotional state into consideration when providing information, making it difficult to provide the highly accurate information users desire. Furthermore, due to a lack of familiarity, the quality of the user experience has not been sufficiently improved. There is a need to solve these problems.
[0754] 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.
[0755] In this invention, the server includes means for receiving information from a user, means for analyzing the information using natural language processing technology and extracting keywords, means for searching a database based on the keywords and acquiring candidates, artificial intelligence generation means for selecting the most suitable candidate from the acquired candidates, means for notifying the user of the selected candidate in a predetermined dialect, and emotion analysis means for analyzing the user's emotional state and adjusting the content of the notification. This makes it possible to provide the user with highly accurate information that they desire, and also to provide friendly information that is responsive to the user's emotions.
[0756] "Means for receiving information from users" refers to interfaces and systems for receiving text or voice messages sent by users. Specifically, this refers to communication protocols and applications for exchanging information between smartphones or computers and servers.
[0757] "Natural language processing technology" refers to computer technology for understanding and analyzing human language. Specifically, it includes algorithms and software libraries for extracting important keywords and context from text.
[0758] "Keyword extraction means" refers to technologies and systems that analyze information received from users and identify important words and phrases that can be used as search and processing criteria.
[0759] "Means for searching a database and retrieving candidates" refers to the technology and system for searching for and retrieving appropriate data from stored information based on extracted keywords. Specifically, this includes database management systems and their search queries.
[0760] "Generative artificial intelligence means" refers to machine learning models and algorithms that generate results that best fit specific conditions based on input data. For example, it is a type of generative AI model.
[0761] "Dialect notification means" refers to technologies and systems that notify users of selected information in language that is familiar to a particular region or culture.
[0762] "Emotion analysis means" refers to technologies and systems that analyze users' comments and reactions and identify their emotional state (happiness, sadness, anger, etc.). Specifically, this includes text analysis algorithms and emotion recognition software.
[0763] MODE FOR CARRYING OUT THE INVENTION
[0764] This invention is a system that provides appropriate food stall information in response to a user's request, and is an interactive information provision system that notifies information taking into account the user's emotional state. Below, we will show how this system can be implemented in concrete terms.
[0765] overview
[0766] This system consists of a user terminal, a server, natural language processing technology, a database, a generative AI means, an emotion engine, and a notification means. This allows users to easily obtain appropriate and satisfying food stall information and receive it in a friendly, interactive format.
[0767] Hardware and software used
[0768] User devices: devices such as smartphones, tablets, and computers
[0769] Server: Cloud server (Amazon Web Services, Google Cloud Platform, etc.)
[0770] Natural language processing technology: Python's NLTK library, spaCy, etc.
[0771] Database: MySQL, PostgreSQL
[0772] Generative AI method: OpenAI's GPT-3
[0773] Emotion analysis technology: IBM Watson Tone Analyzer
[0774] Notification method: LINE API
[0775] Detailed processing
[0776] 1. Submitting a User Request:
[0777] A user sends a message via the LINE official account saying, "Please tell me where I can find a good ramen stand in Nakasu." By opening the LINE app on the user's device, typing and sending the message, this request is sent to the server.
[0778] 2. Message analysis:
[0779] The server receives messages from users and analyzes them using natural language processing technology (e.g., spaCy). Through this analysis, important keywords such as "Nakasu" and "ramen" are extracted.
[0780] 3. Search for food stall information:
[0781] The server searches the database based on the extracted keywords. For example, it generates an SQL query and executes it against the database (MySQL or PostgreSQL) to retrieve information about food stalls that match the criteria "Nakasu" and "ramen."
[0782] 4. Selecting the best stall:
[0783] The server inputs the acquired food stall information into a generation AI method (OpenAI's GPT-3) to select the most suitable food stall. At this time, additional information such as review ratings and price range is also used as evaluation criteria. GPT-3 selects "Hakata Yatai Yoshi-chan" as the best candidate.
[0784] 5. User sentiment analysis:
[0785] The server uses an emotion engine (IBM Watson Tone Analyzer) to analyze the user's message and determine the user's emotional state. This analysis reveals that the user is in a state of joy.
[0786] 6. Notification of recommended food stalls:
[0787] The server generates a message in Hakata dialect based on the selected food stall information, in a tone that reflects the user's emotions. For example, it might say, "I recommend this place, so let's have a drink at Hakata Food Stall Yoshi-chan." This message is sent to the user's device via the LINE API.
[0788] Specific examples
[0789] A user sends a message to the LINE official account saying, "Please tell me where I can find a good ramen stall in Nakasu," and the server receives it. The server analyzes the message using natural language processing technology and extracts the keywords "Nakasu" and "ramen." It then searches the database based on the extracted keywords and uses AI to generate the most suitable stall from the stall information that matches the criteria, selecting "Hakata Yatai Yoshi-chan." When the emotion engine analyzes that the user's emotion is joy, the server generates a message in Hakata dialect saying, "I recommend this, so come and have a drink at Hakata Yatai Yoshi-chan," and notifies the user via the LINE official account.
[0790] In this way, the present invention allows users to easily find a suitable and satisfying stall, and provides friendly information according to their emotions.
[0791] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0792] System program processing flow
[0793] Step 1:
[0794] Receiving messages from users
[0795] Input: The user enters the message "Please tell me where to find a good ramen stand in Nakasu" into the LINE app and presses the send button.
[0796] Specific operation: A user sends a message to the LINE official account. This message is sent to the server via the network.
[0797] Output: The server receives the message from the user.
[0798] Step 2:
[0799] Message Parsing
[0800] Input: A message received by the server saying "Please tell me where I can find a good ramen stand in Nakasu."
[0801] How it works: The server analyzes the message using natural language processing technology (such as Python's NLTK library or spaCy). Through the analysis, keywords such as "Nakasu" and "ramen" are extracted.
[0802] Output: The server extracts the keywords ("Nakasu" and "ramen").
[0803] Step 3:
[0804] Search the food stall information database
[0805] Input: Extracted keywords "Nakasu" and "Ramen".
[0806] Specific operation: The server generates and executes an SQL query against the database. For example, it uses a query such as "SELECT FROM food stall information WHERE area = 'Nakasu' AND cuisine = 'Ramen'".
[0807] Output: The server retrieves stall information that matches the conditions (for example, 10 items).
[0808] Step 4:
[0809] Selection of the best food stall
[0810] Input: Information on 10 food stalls retrieved from the database.
[0811] Specific operation: The server generates a prompt sentence for the generative AI means (OpenAI's GPT-3) and inputs the stall information. It creates a prompt sentence that includes elements such as "past review ratings" and "price range."
[0812] Output: The generation AI outputs “Hakata Yatai Yoshi-chan” as the optimal food stall.
[0813] Step 5:
[0814] User sentiment analysis
[0815] Input: The user's first message: "Can you tell me where to find a good ramen stand in Nakasu?"
[0816] Specific operation: The server uses an emotion engine (IBM Watson Tone Analyzer) to analyze the user's message. Through the analysis, it determines that the user is in the emotional state of "joy."
[0817] Output: The server gets the emotion analysis result (happiness state).
[0818] Step 6:
[0819] Notification of recommended food stalls
[0820] Input: Optimal food stall information "Hakata Food Stall Yoshi-chan" and emotion analysis results (happiness state).
[0821] Specific operation: The server generates a message in Hakata dialect based on this information. For example, it generates a message with the following content: "I recommend this, so let's have a drink at Hakata Yatai Yoshi-chan." The generated message is sent to the user's device using the LINE API.
[0822] Output: The user receives a message in the LINE app containing information about "Hakata Yatai Yoshichan."
[0823] summary
[0824] These steps realize a system that provides users with the accurate food stall information they desire and notifies them in a friendly, interactive format.
[0825] (Application example 2)
[0826] 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."
[0827] In conventional information provision systems, there are methods for selecting the most suitable candidate according to the user's request, but the information provided does not take into account the user's emotional state. As a result, the provided information may not be appropriate for the user's emotions, which has led to a problem of not sufficiently improving the user experience.
[0828] The identification process by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for receiving a message from a user, means for analyzing the message using natural language processing technology and extracting keywords, means for searching a database based on the keywords and obtaining multiple candidates, generation AI means for selecting the most suitable candidate from the candidates, emotion engine means for analyzing the user's emotional state, and means for notifying the user of the selected candidate in a tone corresponding to the user's emotion. This makes it possible to provide appropriate information according to the user's emotional state, thereby improving the user experience.
[0829] The "means for receiving messages from users" is a function for receiving text or voice messages sent by users through the terminal.
[0830] "Natural language processing technology" is a technology that analyzes messages received from users, understands their meaning, and extracts important keywords.
[0831] The "means for searching the database" is a function for searching information in the database based on the extracted keywords and obtaining multiple matching candidates.
[0832] The "generative AI means" is an artificial intelligence function that selects the most suitable item from multiple searched candidates, taking into consideration review ratings, price range, location information, and the user's past preferences.
[0833] The "emotion engine means" is a function for analyzing the user's emotional state from their message and reaction, and adjusts the tone and style of the notification content according to the user's emotions.
[0834] The "means for notifying the selected candidate in a tone corresponding to the user's emotion" is a function for conveying the most suitable candidate to the user in an appropriate tone based on the user's emotional state analyzed by the emotion engine means.
[0835] MODE FOR CARRYING OUT THE INVENTION
[0836] The present invention is a system that provides information according to a user's request, and in particular, provides information adapted to the user's emotional state by using a generation AI and an emotion engine. A specific embodiment of the present invention will be described below.
[0837] 1. System Configuration
[0838] The system consists of the following parts:
[0839] User terminal: A device such as a smartphone, smart glasses, or head-mounted display that provides an interface for users to input messages and voice commands.
[0840] Server: A central computer system that receives, analyzes, and processes messages sent from user terminals. The server communicates with user terminals via a network.
[0841] Natural language processing technology: This technology runs on the server and analyzes messages from users to extract necessary keywords. For example, the BERT model or GPT model is used for this technology.
[0842] Database: A database that stores store information, user preference data, etc.
[0843] Generative AI methods: AI techniques used to select the best candidate from multiple candidates, including the GPT-3 model.
[0844] Emotion Engine: A technology for analyzing the emotional state of a user's messages and reactions. This is done using a sentiment analyzer.
[0845] Notification method: A method of notifying information in a tone that corresponds to the user's emotions, such as LINE or other messaging applications.
[0846] 2. Program processing content
[0847] Receiving and analyzing
[0848] The server receives messages and voice commands sent from the user's device. For example, a user might send a request such as, "Please tell me about a recommended cafe near X station." The server analyzes this message using natural language processing technology and extracts the keywords "X station" and "cafe."
[0849] Database search
[0850] The server searches the database based on the extracted keywords. For example, 20 store listings matching the criteria "X station" and "cafe" are found.
[0851] Candidate selection
[0852] Next, the server inputs the 20 candidates into the generation AI means, which selects the best one by taking into consideration review ratings, price range, location information, the user's past preferences, etc. The generation AI means selects "Cafe ABC" as the best store.
[0853] Sentiment analysis and notification
[0854] The server uses an emotion engine to analyze the user's emotional state from their messages and recent actions. If the user is in a positive mood, it generates a message with a cheerful tone. For example, the server might generate a message such as, "Good work! How about Cafe ABC near Station X? It has great reviews!" and notify the user via LINE or another messaging application.
[0855] 3. Specific Examples
[0856] Consider the case where a user sends a request saying, "Please tell me some recommended cafes near X Station." The server receives this request and extracts the keywords "X Station" and "cafe." As a result of the database search, 20 candidates are found, from which the AI generation method selects the most suitable store, "Cafe ABC." If the user is in good spirits, the server sends a cheerful message saying, "Good work! How about Cafe ABC near X Station? It has great reviews!"
[0857] In this way, the system of the present invention can provide appropriate information according to the user's needs and emotional state, thereby improving the user experience.
[0858] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0859] Step 1:
[0860] A user sends a request via smartphone or smart glasses, such as "Please tell me a recommended cafe near XX station." The user device sends this message to the server. The input is the user's message, and the output is the message sent to the server.
[0861] Step 2:
[0862] The server analyzes the received user message using natural language processing technology (e.g., the BERT model). Specifically, it extracts the keywords "XX Station" and "cafe" from the message. The input is the received message, and the output is the extracted keywords.
[0863] Step 3:
[0864] The server searches a database based on the extracted keywords. The database stores store information and user preference data. As a result of the search, 20 store listings that match the criteria are retrieved. The input is the keywords, and the output is the search results of multiple store listings.
[0865] Step 4:
[0866] The server inputs the 20 candidates into a generative AI method (e.g., GPT-3 model) and selects the optimal store by taking into consideration review ratings, price range, location information, and the user's past preferences. Specifically, the generative AI evaluates the data for each store and selects the optimal store, "Cafe ABC." The input is information about multiple stores, and the output is information about the optimal store.
[0867] Step 5:
[0868] The server uses an emotion engine to analyze the user's emotional state from their messages and recent actions. For example, an emotion analyzer identifies emotional states such as "cheerful" or "depressed" from a message. The input is the user's message, and the output is the analyzed emotional state.
[0869] Step 6:
[0870] The server generates notification content based on the optimal store information and the user's emotional state. Specifically, if the user is in good spirits, a cheerful message such as "Good work! How about Cafe ABC near Station X? It has great reviews!" is generated. The input is the optimal store information and the analyzed emotional state, and the output is the generated notification message.
[0871] Step 7:
[0872] The server sends the generated notification message to the user's device via LINE or other messaging applications. The user's device receives this message and displays it to the user. The input is the generated message, and the output is the message sent to the user's device.
[0873] The above are the specific processing steps of the system program that realizes this application example. This makes it possible to provide appropriate information according to the user's needs and emotional state, thereby improving the user experience.
[0874] 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.
[0875] 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.
[0876] 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.
[0877] [Third embodiment]
[0878] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[0879] 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.
[0880] 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).
[0881] 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.
[0882] 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.
[0883] 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).
[0884] 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.
[0885] 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.
[0886] 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.
[0887] 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.
[0888] 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.
[0889] 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."
[0890] overview
[0891] The present invention is a system that allows users to easily search for food stalls that meet certain conditions, such as a specific area, type of cuisine, and price range. This system uses a generative AI means to recommend the most suitable food stall, and can also communicate information to users in a dialogue format with the personality of a regular customer who speaks Hakata dialect. Specific embodiments of the system are described below.
[0892] System Configuration
[0893] This system mainly consists of the following parts:
[0894] 1. User Device
[0895] 2. Server
[0896] 3. Natural Language Processing Technology
[0897] 4. Database
[0898] 5. Generation AI means
[0899] 6. Means of notification
[0900] 1. User Device
[0901] A user device is a device used by a user to input and send messages using a LINE Official Account, such as a smartphone, tablet, or PC.
[0902] 2. Server
[0903] The server is a central computer system that receives messages sent from user devices, analyzes them, and processes them using database searches and generation AI methods. The server is connected to user devices via a network.
[0904] 3. Natural Language Processing Technology
[0905] Natural language processing technology runs on the server and analyzes messages from users to extract necessary keywords. For example, the keywords "Nakasu" and "ramen" are extracted from a user message such as "Tell me about a good ramen stand in Nakasu tonight."
[0906] 4. Database
[0907] The database stores information about food stalls. This information consists of attributes such as area, type of food, price range, and review rating. Appropriate candidates are retrieved from the database according to the user's request.
[0908] 5. Generation AI means
[0909] The generative AI method is used to select the best one from multiple candidates retrieved from the database, for example, by taking into account the stall's review ratings and the user's past preferences to select the most suitable stall.
[0910] 6. Means of notification
[0911] The notification method provides users with information about the selected food stalls in a dialogue format in Hakata dialect. Providing information in a user-friendly manner improves the user experience. For example, a message such as "I recommend this, so come and have a drink at Hakata Food Stall Yoshi-chan" is generated and sent to users via the official LINE account.
[0912] Specific examples
[0913] 1. Submitting a User Request
[0914] The user sends a message via the official LINE account saying, "Please tell me where I can find a good ramen stand in Nakasu." The user's device receives this message and sends it to the server.
[0915] 2. Message Analysis
[0916] The server analyzes the received message using natural language processing technology and extracts the keywords "Nakasu" and "ramen."
[0917] 3. Database Search
[0918] The server searches the database based on the extracted keywords, and finds 10 food stalls that match the criteria "Nakasu" and "ramen."
[0919] 4. Selecting the best food stall
[0920] The server inputs the 10 candidates into the generation AI means and selects the most suitable food stall taking into consideration evaluation reviews, price range, etc. The generation AI means selects "Hakata Yatai Yoshi-chan" as the most suitable food stall.
[0921] 5. Notification of recommended food stalls
[0922] The server then provides the selected food stall information to the user in a dialogue format in Hakata dialect. A message such as "I recommend this place, so why not grab a drink at Hakata Food Stall Yoshi-chan" is generated and sent to the user via the official LINE account.
[0923] Through the above embodiments, the present invention helps users easily find suitable and satisfying food stalls and provides information in a friendly, interactive manner.
[0924] The processing flow will be explained below.
[0925] Specific processing steps of the program
[0926] Step 1:
[0927] The user enters a message. The user sends a message to the LINE official account, such as "Tell me about a good ramen stand in Nakasu."
[0928] Step 2:
[0929] The device receives the message. The LINE server receives the message from the user and sends it to the analysis server.
[0930] Step 3:
[0931] The server receives the message. The analysis server receives the message data from the LINE server.
[0932] Step 4:
[0933] The server performs natural language processing. The analysis server uses natural language processing technology to analyze the received message and extract the keywords "Nakasu" and "ramen."
[0934] Step 5:
[0935] The server generates a search query. Based on the keywords extracted by the analysis server, a search query is generated for the food stall database. Example: "Area = 'Nakasu' AND Cuisine = 'Ramen' AND Rating > 4"
[0936] Step 6:
[0937] The server searches the database. The server sends the generated query to the database and retrieves candidates that match the conditions "Nakasu" and "ramen" from the database.
[0938] Step 7:
[0939] The server receives the search results. The server receives the candidate list obtained from the database.
[0940] Step 8:
[0941] The server calls the generation AI, and the analysis server inputs the search result data into the generation AI and instructs it to select the best candidate.
[0942] Step 9:
[0943] Generative AI evaluates the data. Generative AI evaluates each stall on the candidate list and selects the most suitable stall, taking into account reviews and price range.
[0944] Step 10:
[0945] The server obtains the AI's selection results. The analysis server receives the optimal food stall information selected by the generation AI (e.g., Hakata Food Stall Yoshi-chan).
[0946] Step 11:
[0947] The server generates a message in Hakata dialect. The analysis server uses the selected food stall information to generate a conversational message in Hakata dialect. Example: "I recommend this, so let's have a drink at Hakata Food Stall Yoshi-chan."
[0948] Step 12:
[0949] The server sends the message to the user's device. The message generated by the analysis server is sent to the user's device via the LINE server.
[0950] Step 13:
[0951] The device notifies the user of the message. The user's device displays the message received from the LINE server.
[0952] Through the above steps, the user can easily obtain information about food stalls that meet his or her needs and receive the information in a friendly, interactive format.
[0953] Example 1
[0954] 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."
[0955] Conventional food stall search systems have difficulty in quickly and accurately providing information that matches the user's requirements, resulting in issues with the accuracy of search results and user experience. In addition, the information provided is expressed in general standard Japanese, which lacks the familiarity specific to the region.
[0956] 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.
[0957] In this invention, the server includes means for receiving input from a user, means for analyzing the input using natural language processing technology to obtain important extracted information, and means for searching information sources based on the extracted information to obtain multiple results. This makes it possible to quickly and accurately provide information that matches the user's requirements, and improves the user experience by providing friendly notifications in local languages.
[0958] The "means for receiving input from the user" is a function that provides an interface for the user to input requests to the system and transmits the input information to the server.
[0959] "Natural language processing technology" is a technology for analyzing received user input and extracting important information and keywords.
[0960] "Important extracted information" refers to keywords and phrases necessary for search and processing, extracted from user input using natural language processing technology.
[0961] The "means for searching information sources" is a function for querying a specific database or information resource based on the extracted information and searching for relevant information therein.
[0962] The "means for obtaining multiple results" is a function for obtaining multiple candidate information items that meet the conditions and are obtained when searching information sources.
[0963] A "generative AI model" is an artificial intelligence model that selects the optimal candidate from multiple obtained results.
[0964] "Regional words" are dialects and expressions used in a particular region, and are words that convey information in a user-friendly manner.
[0965] A "communication application" is application software for sending and receiving messages over the Internet.
[0966] An embodiment of the present invention is described below.
[0967] This system allows users to easily search for food stalls that fit specific criteria, such as area, type of cuisine, price range, etc. The system uses a generative AI model to recommend the most suitable food stalls and can communicate information to users in a dialogue format using local language.
[0968] System Configuration
[0969] The system mainly consists of the following elements:
[0970] 1. User Device
[0971] 2. Server
[0972] 3. Natural Language Processing Engine
[0973] 4. Database
[0974] 5. Generative AI Models
[0975] 6. Means of notification
[0976] 1. User Device
[0977] A user device is a device that users use to input and send messages. This includes smartphones, tablets, and PCs. For example, you can send a message using a LINE official account.
[0978] 2. Server
[0979] The server is a central computer system that receives messages sent from user devices, analyzes them, and processes them using database searches and generative AI methods. The server communicates with user devices via the Internet.
[0980] 3. Natural Language Processing Engine
[0981] The natural language processing engine running on the server analyzes messages from users and extracts necessary keywords. For example, from a user message such as "Tell me about a good ramen stand in Nakasu tonight," the engine extracts the keywords "Nakasu" and "ramen."
[0982] 4. Database
[0983] The database stores information about food stalls, which consist of attributes such as area, type of food, price range, and review rating. Based on the user's request, the system retrieves suitable candidates from the database.
[0984] 5. Generative AI Models
[0985] The generative AI model is used to select the best one from multiple candidates retrieved from the database, for example, taking into account the stall's review ratings and the user's past preferences to select the most suitable stall.
[0986] 6. Means of notification
[0987] The notification method will provide users with information about the selected food stall in a local language. For example, a message such as "I recommend this, so come and have a drink at Hakata Food Stall Yoshi-chan" will be generated and sent to users via the official LINE account.
[0988] Specific examples
[0989] 1. Submitting a User Request
[0990] The user sends a message via the official LINE account saying, "Please tell me where I can find a good ramen stand in Nakasu." The user's device receives this message and sends it to the server.
[0991] 2. Message Analysis
[0992] The server analyzes the received message using a natural language processing engine and extracts the keywords "Nakasu" and "ramen."
[0993] 3. Database Search
[0994] The server searches the database based on the extracted keywords, and finds multiple food stalls that match the criteria "Nakasu" and "ramen."
[0995] 4. Selecting the best food stall
[0996] The server inputs multiple candidates into the generative AI model and selects the most suitable food stall, taking into consideration factors such as reviews and price range. The generative AI model selects "Hakata Yatai Yoshichan" as the most suitable food stall.
[0997] 5. Notification of recommended food stalls
[0998] The server provides the selected food stall information to the user in the region's language, generating a message such as "I recommend this place, so come have a drink at Hakata Food Stall Yoshi-chan" and sending it to the user via the official LINE account.
[0999] Prompt Sentence Examples
[1000] "When a user sends a message on LINE saying, 'Please tell me where to find a delicious ramen stall in Nakasu,' please explain how you would analyze this message and how you would select the most suitable stall and provide the information."
[1001] Through the above embodiments, the present invention helps users easily find suitable and satisfying food stalls and provides information in a friendly, interactive manner.
[1002] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1003] Step 1: Submitting a User Request
[1004] A user sends a message through a LINE official account that includes a specific area and type of cuisine. The user's device inputs this message into the LINE Platform, which then sends it to the server. The input is, for example, a message like "Please tell me where I can find a good ramen stand in Nakasu," and the output is that this message is sent to the server via the LINE Platform.
[1005] Specific behavior:
[1006] The user launches the LINE app.
[1007] Enter your request in the message input field and press the send button.
[1008] Step 2: Receiving a message
[1009] The server receives messages sent from user devices via the Internet. At this stage, the server retrieves the messages using the LINE Official Account API and temporarily stores them. The input is the message sent by the user, and the output is the message stored in the server's message queue.
[1010] Specific behavior:
[1011] The server periodically checks for new messages.
[1012] Receives messages and adds them to queues that it manages.
[1013] Step 3: Parse the message
[1014] The server analyzes the received message using a natural language processing engine (e.g., SpaCy or NLTK) and extracts important keywords. The input is the received message, and the output is the extracted keywords "Nakasu" and "Ramen."
[1015] Specific behavior:
[1016] Start the natural language processing engine.
[1017] Tokenize the message and perform entity identification.
[1018] Keywords are extracted and saved for database searching.
[1019] Step 4: Database Search
[1020] The server searches the database based on the extracted keywords. It generates an SQL query to retrieve data that matches the criteria. The input is the extracted keywords "Nakasu" and "ramen," and the output is a list of information about the corresponding food stalls.
[1021] Specific behavior:
[1022] Establish a database connection (e.g. MySQL, PostgreSQL).
[1023] Generate SQL queries to search the database.
[1024] Search results are temporarily stored.
[1025] Step 5: Select the best stall
[1026] The server calls a generative AI model (e.g., GPT-4) and inputs the search result stall information and evaluation criteria. The generative AI model then recommends the optimal stall based on this. The input is the search result list and evaluation criteria, and the output is the optimal stall, "Hakata Yatai Yoshichan."
[1027] Specific behavior:
[1028] Invoke a generative AI model.
[1029] Provide input data to the model and perform the model's operations.
[1030] Select the best candidate from the model.
[1031] Step 6: Notification of recommended food stalls
[1032] The server notifies the user of the selected food stall information in the region's specific language. It generates a message using the LINE official account's API and sends it to the user. The input is the optimal food stall information "Hakata Yatai Yoshi-chan," and the output is a message written in the region's specific language, "This is my recommendation, so come and have a drink at Hakata Yatai Yoshi-chan."
[1033] Specific behavior:
[1034] Generate standard phrases in Hakata dialect using a generative AI model.
[1035] Send messages using the LINE Official Account API.
[1036] Through the above processing steps, the user can easily obtain information about food stalls that meet the user's requirements, and can receive the information in a friendly, interactive format.
[1037] (Application example 1)
[1038] 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."
[1039] There is a lack of a system that allows users to easily find information about food stalls and other restaurants in a specific area. As a result, users have to spend a lot of time and effort to find the right option from the many options available. Furthermore, if the information provided is not user-friendly, the user experience may be impaired.
[1040] 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.
[1041] In this invention, the server includes means for receiving a request from a user, means for analyzing the request using natural language processing technology and extracting conditions, means for searching a database based on the conditions and obtaining multiple options, generation AI means for selecting the optimal option from the options, means for notifying the user of the selected option in a predetermined regional dialect, and means for providing the user with information about the selected option in an interactive format. This enables the user to quickly find the optimal restaurant that meets their requirements and receive information in a friendly interactive format.
[1042] "Means for receiving requests from a user" refers to the function of providing an interface for a user to input specific requests or wishes and sending the input data to a server.
[1043] "Means of analyzing and extracting conditions using natural language processing technology" refers to the technical process of analyzing the user's input text and identifying necessary keywords and requirements.
[1044] "Means for searching a database based on conditions and obtaining multiple options" refers to the process of searching a database for information that matches the extracted conditions and obtaining multiple candidates accordingly.
[1045] "Generative AI means for selecting optimal options" refers to the process of using artificial intelligence to select the most suitable candidate from multiple obtained options based on the user's requirements and evaluation criteria.
[1046] "Means of notifying the user in a pre-set regional dialect" refers to a function that conveys information about selected candidates to the user in a dialect used in a specific region.
[1047] The term "means for providing information to a user in an interactive manner" refers to a method for providing information through interactive communication with a user.
[1048] "Communications application" refers to a software platform that enables users to exchange messages and obtain information.
[1049] This invention is a system that allows users to easily search for food stalls and restaurants that meet specific criteria, such as area, type of cuisine, and price range, and receive that information in a user-friendly manner. This system is composed of a user terminal, a server, natural language processing technology, a database, a generation AI means, a notification means, and a dialogue means.
[1050] User terminal
[1051] The user terminal is typically a smartphone, tablet, or PC, and provides an interface for the user to input their specific needs and wishes, allowing the user to easily input and submit their request.
[1052] server
[1053] The server is a central computer system that receives and analyzes requests sent from user terminals. The server has the following functions:
[1054] Natural language processing technology: Using the OpenAI API, we analyze user requests and extract necessary keywords and conditions.
[1055] Database search: Using an SQLite database, search for food stall and restaurant information that matches the analyzed conditions.
[1056] Generative AI means: Select the most suitable candidate from the multiple options obtained based on the user's requirements and evaluation criteria.
[1057] Notification method: Information about the selected candidate is notified to the user through a communication application in the dialect used in the specific region.
[1058] Interaction means: Provide information through interactive communication with the user.
[1059] Natural language processing technology explained
[1060] The server receives messages from users and analyzes them using natural language processing technology. Specifically, it uses the OpenAI API to analyze the text and extract necessary keywords (e.g., "Nakasu" or "ramen").
[1061] Database Search Description
[1062] Based on the analyzed keywords, the server searches an SQLite database to retrieve information on multiple relevant food stalls and restaurants, including details such as area, type of cuisine, price range, and review ratings.
[1063] Description of Generative AI Method
[1064] The server inputs the obtained multiple options into the generation AI (OpenAI API) and selects the best candidate based on the user's past preferences and evaluation criteria. For example, "Hakata Yatai Yoshichan" is selected based on review ratings and price range.
[1065] Description of notification and interaction methods
[1066] The server then provides the user with information about the selected candidates in a dialect such as Hakata dialect. For example, a message such as "Hey, what do you recommend? Let's grab a drink at Hakata Yatai Yoshi-chan" is generated and sent to the user via a communication application such as LINE. Additionally, when the user asks additional questions via interactive means, the server provides friendly information in a similar manner.
[1067] Specific examples
[1068] When a user sends a request such as "Tell me about a good ramen stall in Nakasu," the server uses natural language processing technology to extract the keywords "Nakasu" and "ramen." It then searches for relevant stall information in an SQLite database, and uses a generation AI to select "Hakata Yatai Yoshi-chan" as the best candidate. It then generates a message in Hakata dialect saying, "I recommend this place, so let's have a drink at Hakata Yatai Yoshi-chan," and notifies the user via LINE.
[1069] Prompt Sentence Examples
[1070] "Generate a message for the user with the personality of a regular customer who speaks Hakata dialect.
[1071] Conditions: Recommended food stall "Hakata Yatai Yoshichan"
[1072] Prompt: "My friend recommended that we have a drink at Hakata Yatai Yoshi-chan."
[1073] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1074] Step 1:
[1075] Users use the smartphone app or LINE official account to enter and submit requests related to a specific area, cuisine, and price range.
[1076] Input: User request data (e.g., "Tell me about a good ramen stand in Nakasu.")
[1077] Output: The request data sent to the server
[1078] Step 2:
[1079] The server receives the request from the user and analyzes it using natural language processing technology.
[1080] Input: User request data
[1081] Output: Extracted keywords (e.g. "Nakasu" "Ramen")
[1082] What it does: It uses the OpenAI API to analyze the text of the request and extract important keywords.
[1083] Step 3:
[1084] The server searches the SQLite database based on keywords and retrieves information on multiple food stalls.
[1085] Input: Extracted keywords (e.g., "Nakasu" and "Ramen")
[1086] Output: A list of relevant stall information (e.g., multiple stall candidates)
[1087] Specific operation: Execute SQLite database query to search and retrieve stall information matching keywords.
[1088] Step 4:
[1089] The server inputs the acquired stall information into the generation AI and selects the most suitable candidate.
[1090] Input: List of food stall information, user's past preference information (e.g., review rating, price range)
[1091] Output: Optimal food stall information (e.g. "Hakata Food Stall Yoshichan")
[1092] Specific operation: Using a generative AI model (OpenAI API), the optimal stall is selected from a list of candidates based on evaluation criteria.
[1093] Step 5:
[1094] The server notifies the user of the selected food stall information in a local dialect such as Hakata dialect.
[1095] Input: Best food stall information
[1096] Output: A notification message written in a dialect (e.g., "My recommendation: grab a drink at Hakata Yatai Yoshi-chan.")
[1097] Specific operation: Using generative AI, the selected food stall information is expressed in a friendly manner in the local dialect, and a message is generated.
[1098] Step 6:
[1099] The server generates a notification message and sends it to the user via a communication application such as LINE.
[1100] Input: Notification message written in dialect
[1101] Output: Notification message displayed on the user's terminal
[1102] Specific behavior: Uses the LINE Messaging API to send the generated dialect message to the user's LINE account.
[1103] 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.
[1104] overview
[1105] This invention relates to a system that provides food stall information tailored to the user's needs. In particular, it uses a generative AI to select the most suitable food stall, an emotion engine to recognize the user's emotions, and provides information according to the emotions. This system notifies the user of information in a friendly dialogue format, improving the user experience.
[1106] System Configuration
[1107] The system consists of the following parts:
[1108] 1. User Device
[1109] 2. Server
[1110] 3. Natural Language Processing Technology
[1111] 4. Database
[1112] 5. Generation AI means
[1113] 6. Emotion Engine
[1114] 7. Means of notification
[1115] 1. User Device
[1116] A user device is a device used by a user to input and send messages using a LINE Official Account, such as a smartphone, tablet, or PC.
[1117] 2. Server
[1118] The server is a central computer system that receives messages sent from user devices, analyzes them, and processes them using database searches and generation AI methods. The server is connected to user devices via a network.
[1119] 3. Natural Language Processing Technology
[1120] Natural language processing technology runs on the server and analyzes messages from users to extract necessary keywords. For example, the keywords "Nakasu" and "ramen" are extracted from a user message such as "Tell me about a good ramen stand in Nakasu."
[1121] 4. Database
[1122] The database stores information about food stalls. This information consists of attributes such as area, type of food, price range, and review rating. Appropriate candidates are retrieved from the database according to the user's request.
[1123] 5. Generation AI means
[1124] The generative AI method is used to select the best one from multiple candidates retrieved from the database, taking into account review ratings and users' past preferences to select the best stall.
[1125] 6. Emotion Engine
[1126] The emotion engine is a technology that analyzes the user's emotional state from their messages and reactions. Based on the results of this analysis, the tone and style of the notification content can be adjusted. For example, if the user is in a happy mood, a cheerful message will be generated, and if the user is depressed, a gentler message will be generated.
[1127] 7. Means of notification
[1128] The notification method notifies the user of the selected food stall information in a dialogue format in Hakata dialect and in a tone that reflects the user's emotions. By delivering information in a user-friendly manner, the user experience is improved. For example, a message such as "Here's my recommendation, come have a drink at Hakata Food Stall Yoshi-chan" is generated and sent to the user via the official LINE account.
[1129] Specific examples
[1130] 1. Submitting a User Request
[1131] Users can send a message via the official LINE account saying, "Please tell me where I can find a good ramen stand in Nakasu."
[1132] 2. Message Analysis
[1133] The server analyzes the received message using natural language processing technology and extracts the keywords "Nakasu" and "ramen."
[1134] 3. Database Search
[1135] The server searches the database based on the extracted keywords, and finds 10 food stalls that match the criteria "Nakasu" and "ramen."
[1136] 4. Selecting the best food stall
[1137] The server inputs the 10 candidates into the generation AI means and selects the most suitable food stall taking into consideration evaluation reviews, price range, etc. The generation AI means selects "Hakata Yatai Yoshi-chan" as the most suitable food stall.
[1138] 5. User sentiment analysis
[1139] The server uses an emotion engine to analyze the user's emotional state from the message: if the user is in a happy state, it generates a message with a light tone.
[1140] 6. Notification of recommended food stalls
[1141] The server notifies the user of the selected food stall information in Hakata dialect, using a tone that reflects the user's emotions. For example, a message such as "I recommend this place, so come and have a drink at Hakata Food Stall Yoshi-chan" is generated and sent to the user via the official LINE account.
[1142] Through the above-described embodiments, the present invention helps users easily find suitable and satisfying food stalls, provides information in a friendly and interactive manner, and further improves individual user experience by providing information according to the user's emotions.
[1143] The processing flow will be explained below.
[1144] Specific processing steps of the program
[1145] Step 1:
[1146] The user enters a message. The user sends a message to the LINE official account saying, "Tell me about a good ramen stand in Nakasu."
[1147] Step 2:
[1148] The device receives the message. The LINE server receives the message from the user and sends it to the analysis server.
[1149] Step 3:
[1150] The server receives the message. The analysis server receives the message data from the LINE server.
[1151] Step 4:
[1152] The server performs natural language processing. The analysis server uses natural language processing technology to analyze the received message and extract the keywords "Nakasu" and "ramen."
[1153] Step 5:
[1154] The server generates a search query. Based on the keywords extracted by the analysis server, a search query is generated for the food stall database. Example: "Area = 'Nakasu' AND Cuisine = 'Ramen' AND Rating > 4"
[1155] Step 6:
[1156] The server searches the database. The server sends the generated query to the database and retrieves candidates that match the conditions "Nakasu" and "ramen" from the database.
[1157] Step 7:
[1158] The server receives the search results. The server receives the candidate list obtained from the database.
[1159] Step 8:
[1160] The server calls the generation AI, and the analysis server inputs the search result data into the generation AI and instructs it to select the best candidate.
[1161] Step 9:
[1162] Generative AI evaluates the data. Generative AI evaluates each stall on the candidate list and selects the most suitable stall, taking into account reviews and price range.
[1163] Step 10:
[1164] The server obtains the AI's selection results. The analysis server receives the optimal food stall information selected by the generation AI (e.g., Hakata Food Stall Yoshi-chan).
[1165] Step 11:
[1166] The server calls the emotion engine, and the analysis server inputs the user's message and past interactions into the emotion engine, instructing it to analyze the user's emotional state.
[1167] Step 12:
[1168] Emotion engine evaluates the emotional state: The emotion engine analyzes the content of the user's message and identifies the user's current emotional state (e.g., happy, sad, surprised, etc.).
[1169] Step 13:
[1170] The server generates a message based on the user's emotions. The analysis server uses the selected food stall information to generate a message in Hakata dialect with a tone and style that matches the user's emotional state. Example: "I recommend this place, so let's have a drink at Hakata Food Stall Yoshi-chan."
[1171] Step 14:
[1172] The server sends the message to the user's device. The message generated by the analysis server is sent to the user's device via the LINE server.
[1173] Step 15:
[1174] The device notifies the user of the message. The user's device displays the message received from the LINE server.
[1175] As a specific example of processing, if the user is in a happy state, the emotion engine generates a message with a "cheerful tone that makes you smile all the time." Conversely, if the user is sad, the message is adjusted to a "warm tone."
[1176] Through the above steps, the present invention allows users to easily obtain information about food stalls that meet their needs and receive information in a friendly, interactive format. Furthermore, by using an emotion engine, it is possible to provide information that corresponds to the user's emotions, improving the individual user experience.
[1177] Example 2
[1178] 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."
[1179] Conventional food stall information systems are unable to automatically select appropriate keywords when extracting the information users are looking for, and do not take the user's emotional state into consideration when providing information, making it difficult to provide the highly accurate information users desire. Furthermore, due to a lack of familiarity, the quality of the user experience has not been sufficiently improved. There is a need to solve these problems.
[1180] 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.
[1181] In this invention, the server includes means for receiving information from a user, means for analyzing the information using natural language processing technology and extracting keywords, means for searching a database based on the keywords and acquiring candidates, artificial intelligence generation means for selecting the most suitable candidate from the acquired candidates, means for notifying the user of the selected candidate in a predetermined dialect, and emotion analysis means for analyzing the user's emotional state and adjusting the content of the notification. This makes it possible to provide the user with highly accurate information that they desire, and also to provide friendly information that is responsive to the user's emotions.
[1182] "Means for receiving information from users" refers to interfaces and systems for receiving text or voice messages sent by users. Specifically, this refers to communication protocols and applications for exchanging information between smartphones or computers and servers.
[1183] "Natural language processing technology" refers to computer technology for understanding and analyzing human language. Specifically, it includes algorithms and software libraries for extracting important keywords and context from text.
[1184] "Keyword extraction means" refers to technologies and systems that analyze information received from users and identify important words and phrases that can be used as search and processing criteria.
[1185] "Means for searching a database and retrieving candidates" refers to the technology and system for searching for and retrieving appropriate data from stored information based on extracted keywords. Specifically, this includes database management systems and their search queries.
[1186] "Generative artificial intelligence means" refers to machine learning models and algorithms that generate results that best fit specific conditions based on input data. For example, it is a type of generative AI model.
[1187] "Dialect notification means" refers to technologies and systems that notify users of selected information in language that is familiar to a particular region or culture.
[1188] "Emotion analysis means" refers to technologies and systems that analyze users' comments and reactions and identify their emotional state (happiness, sadness, anger, etc.). Specifically, this includes text analysis algorithms and emotion recognition software.
[1189] MODE FOR CARRYING OUT THE INVENTION
[1190] This invention is a system that provides appropriate food stall information in response to a user's request, and is an interactive information provision system that notifies information taking into account the user's emotional state. Below, we will show how this system can be implemented in concrete terms.
[1191] overview
[1192] This system consists of a user terminal, a server, natural language processing technology, a database, a generative AI means, an emotion engine, and a notification means. This allows users to easily obtain appropriate and satisfying food stall information and receive it in a friendly, interactive format.
[1193] Hardware and software used
[1194] User devices: devices such as smartphones, tablets, and computers
[1195] Server: Cloud server (Amazon Web Services, Google Cloud Platform, etc.)
[1196] Natural language processing technology: Python's NLTK library, spaCy, etc.
[1197] Database: MySQL, PostgreSQL
[1198] Generative AI method: OpenAI's GPT-3
[1199] Emotion analysis technology: IBM Watson Tone Analyzer
[1200] Notification method: LINE API
[1201] Detailed processing
[1202] 1. Submitting a User Request:
[1203] A user sends a message via the LINE official account saying, "Please tell me where I can find a good ramen stand in Nakasu." By opening the LINE app on the user's device, typing and sending the message, this request is sent to the server.
[1204] 2. Message analysis:
[1205] The server receives messages from users and analyzes them using natural language processing technology (e.g., spaCy). Through this analysis, important keywords such as "Nakasu" and "ramen" are extracted.
[1206] 3. Search for food stall information:
[1207] The server searches the database based on the extracted keywords. For example, it generates an SQL query and executes it against the database (MySQL or PostgreSQL) to retrieve information about food stalls that match the criteria "Nakasu" and "ramen."
[1208] 4. Selecting the best stall:
[1209] The server inputs the acquired food stall information into a generation AI method (OpenAI's GPT-3) to select the most suitable food stall. At this time, additional information such as review ratings and price range is also used as evaluation criteria. GPT-3 selects "Hakata Yatai Yoshi-chan" as the best candidate.
[1210] 5. User sentiment analysis:
[1211] The server uses an emotion engine (IBM Watson Tone Analyzer) to analyze the user's message and determine the user's emotional state. This analysis reveals that the user is in a state of joy.
[1212] 6. Notification of recommended food stalls:
[1213] The server generates a message in Hakata dialect based on the selected food stall information, in a tone that reflects the user's emotions. For example, it might say, "I recommend this place, so let's have a drink at Hakata Food Stall Yoshi-chan." This message is sent to the user's device via the LINE API.
[1214] Specific examples
[1215] A user sends a message to the LINE official account saying, "Please tell me where I can find a good ramen stall in Nakasu," and the server receives it. The server analyzes the message using natural language processing technology and extracts the keywords "Nakasu" and "ramen." It then searches the database based on the extracted keywords and uses AI to generate the most suitable stall from the stall information that matches the criteria, selecting "Hakata Yatai Yoshi-chan." When the emotion engine analyzes that the user's emotion is joy, the server generates a message in Hakata dialect saying, "I recommend this, so come and have a drink at Hakata Yatai Yoshi-chan," and notifies the user via the LINE official account.
[1216] In this way, the present invention allows users to easily find a suitable and satisfying stall, and provides friendly information according to their emotions.
[1217] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1218] System program processing flow
[1219] Step 1:
[1220] Receiving messages from users
[1221] Input: The user enters the message "Please tell me where to find a good ramen stand in Nakasu" into the LINE app and presses the send button.
[1222] Specific operation: A user sends a message to the LINE official account. This message is sent to the server via the network.
[1223] Output: The server receives the message from the user.
[1224] Step 2:
[1225] Message Parsing
[1226] Input: A message received by the server saying "Please tell me where I can find a good ramen stand in Nakasu."
[1227] How it works: The server analyzes the message using natural language processing technology (such as Python's NLTK library or spaCy). Through the analysis, keywords such as "Nakasu" and "ramen" are extracted.
[1228] Output: The server extracts the keywords ("Nakasu" and "ramen").
[1229] Step 3:
[1230] Search the food stall information database
[1231] Input: Extracted keywords "Nakasu" and "Ramen".
[1232] Specific operation: The server generates and executes an SQL query against the database. For example, it uses a query such as "SELECT FROM food stall information WHERE area = 'Nakasu' AND cuisine = 'Ramen'".
[1233] Output: The server retrieves stall information that matches the conditions (for example, 10 items).
[1234] Step 4:
[1235] Selection of the best food stall
[1236] Input: Information on 10 food stalls retrieved from the database.
[1237] Specific operation: The server generates a prompt sentence for the generative AI means (OpenAI's GPT-3) and inputs the stall information. It creates a prompt sentence that includes elements such as "past review ratings" and "price range."
[1238] Output: The generation AI outputs “Hakata Yatai Yoshi-chan” as the optimal food stall.
[1239] Step 5:
[1240] User sentiment analysis
[1241] Input: The user's first message: "Can you tell me where to find a good ramen stand in Nakasu?"
[1242] Specific operation: The server uses an emotion engine (IBM Watson Tone Analyzer) to analyze the user's message. Through the analysis, it determines that the user is in the emotional state of "joy."
[1243] Output: The server gets the emotion analysis result (happiness state).
[1244] Step 6:
[1245] Notification of recommended food stalls
[1246] Input: Optimal food stall information "Hakata Food Stall Yoshi-chan" and emotion analysis results (happiness state).
[1247] Specific operation: The server generates a message in Hakata dialect based on this information. For example, it generates a message with the following content: "I recommend this, so let's have a drink at Hakata Yatai Yoshi-chan." The generated message is sent to the user's device using the LINE API.
[1248] Output: The user receives a message in the LINE app containing information about "Hakata Yatai Yoshichan."
[1249] summary
[1250] These steps realize a system that provides users with the accurate food stall information they desire and notifies them in a friendly, interactive format.
[1251] (Application example 2)
[1252] 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."
[1253] In conventional information provision systems, there are methods for selecting the most suitable candidate according to the user's request, but the information provided does not take into account the user's emotional state. As a result, the provided information may not be appropriate for the user's emotions, which has led to a problem of not sufficiently improving the user experience.
[1254] The identification process by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for receiving a message from a user, means for analyzing the message using natural language processing technology and extracting keywords, means for searching a database based on the keywords and obtaining multiple candidates, generation AI means for selecting the most suitable candidate from the candidates, emotion engine means for analyzing the user's emotional state, and means for notifying the user of the selected candidate in a tone corresponding to the user's emotion. This makes it possible to provide appropriate information according to the user's emotional state, thereby improving the user experience.
[1255] The "means for receiving messages from users" is a function for receiving text or voice messages sent by users through the terminal.
[1256] "Natural language processing technology" is a technology that analyzes messages received from users, understands their meaning, and extracts important keywords.
[1257] The "means for searching the database" is a function for searching information in the database based on the extracted keywords and obtaining multiple matching candidates.
[1258] The "generative AI means" is an artificial intelligence function that selects the most suitable item from multiple searched candidates, taking into consideration review ratings, price range, location information, and the user's past preferences.
[1259] The "emotion engine means" is a function for analyzing the user's emotional state from their message and reaction, and adjusts the tone and style of the notification content according to the user's emotions.
[1260] The "means for notifying the selected candidate in a tone corresponding to the user's emotion" is a function for conveying the most suitable candidate to the user in an appropriate tone based on the user's emotional state analyzed by the emotion engine means.
[1261] MODE FOR CARRYING OUT THE INVENTION
[1262] The present invention is a system that provides information according to a user's request, and in particular, provides information adapted to the user's emotional state by using a generation AI and an emotion engine. A specific embodiment of the present invention will be described below.
[1263] 1. System Configuration
[1264] The system consists of the following parts:
[1265] User terminal: A device such as a smartphone, smart glasses, or head-mounted display that provides an interface for users to input messages and voice commands.
[1266] Server: A central computer system that receives, analyzes, and processes messages sent from user terminals. The server communicates with user terminals via a network.
[1267] Natural language processing technology: This technology runs on the server and analyzes messages from users to extract necessary keywords. For example, the BERT model or GPT model is used for this technology.
[1268] Database: A database that stores store information, user preference data, etc.
[1269] Generative AI methods: AI techniques used to select the best candidate from multiple candidates, including the GPT-3 model.
[1270] Emotion Engine: A technology for analyzing the emotional state of a user's messages and reactions. This is done using a sentiment analyzer.
[1271] Notification method: A method of notifying information in a tone that corresponds to the user's emotions, such as LINE or other messaging applications.
[1272] 2. Program processing content
[1273] Receiving and analyzing
[1274] The server receives messages and voice commands sent from the user's device. For example, a user might send a request such as, "Please tell me about a recommended cafe near X station." The server analyzes this message using natural language processing technology and extracts the keywords "X station" and "cafe."
[1275] Database search
[1276] The server searches the database based on the extracted keywords. For example, 20 store listings matching the criteria "X station" and "cafe" are found.
[1277] Candidate selection
[1278] Next, the server inputs the 20 candidates into the generation AI means, which selects the best one by taking into consideration review ratings, price range, location information, the user's past preferences, etc. The generation AI means selects "Cafe ABC" as the best store.
[1279] Sentiment analysis and notification
[1280] The server uses an emotion engine to analyze the user's emotional state from their messages and recent actions. If the user is in a positive mood, it generates a message with a cheerful tone. For example, the server might generate a message such as, "Good work! How about Cafe ABC near Station X? It has great reviews!" and notify the user via LINE or another messaging application.
[1281] 3. Specific Examples
[1282] Consider the case where a user sends a request saying, "Please tell me some recommended cafes near X Station." The server receives this request and extracts the keywords "X Station" and "cafe." As a result of the database search, 20 candidates are found, from which the AI generation method selects the most suitable store, "Cafe ABC." If the user is in good spirits, the server sends a cheerful message saying, "Good work! How about Cafe ABC near X Station? It has great reviews!"
[1283] In this way, the system of the present invention can provide appropriate information according to the user's needs and emotional state, thereby improving the user experience.
[1284] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1285] Step 1:
[1286] A user sends a request via smartphone or smart glasses, such as "Please tell me a recommended cafe near XX station." The user device sends this message to the server. The input is the user's message, and the output is the message sent to the server.
[1287] Step 2:
[1288] The server analyzes the received user message using natural language processing technology (e.g., the BERT model). Specifically, it extracts the keywords "XX Station" and "cafe" from the message. The input is the received message, and the output is the extracted keywords.
[1289] Step 3:
[1290] The server searches a database based on the extracted keywords. The database stores store information and user preference data. As a result of the search, 20 store listings that match the criteria are retrieved. The input is the keywords, and the output is the search results of multiple store listings.
[1291] Step 4:
[1292] The server inputs the 20 candidates into a generative AI method (e.g., GPT-3 model) and selects the optimal store by taking into consideration review ratings, price range, location information, and the user's past preferences. Specifically, the generative AI evaluates the data for each store and selects the optimal store, "Cafe ABC." The input is information about multiple stores, and the output is information about the optimal store.
[1293] Step 5:
[1294] The server uses an emotion engine to analyze the user's emotional state from their messages and recent actions. For example, an emotion analyzer identifies emotional states such as "cheerful" or "depressed" from a message. The input is the user's message, and the output is the analyzed emotional state.
[1295] Step 6:
[1296] The server generates notification content based on the optimal store information and the user's emotional state. Specifically, if the user is in good spirits, a cheerful message such as "Good work! How about Cafe ABC near Station X? It has great reviews!" is generated. The input is the optimal store information and the analyzed emotional state, and the output is the generated notification message.
[1297] Step 7:
[1298] The server sends the generated notification message to the user's device via LINE or other messaging applications. The user's device receives this message and displays it to the user. The input is the generated message, and the output is the message sent to the user's device.
[1299] The above are the specific processing steps of the system program that realizes this application example. This makes it possible to provide appropriate information according to the user's needs and emotional state, thereby improving the user experience.
[1300] 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.
[1301] 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.
[1302] 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.
[1303] [Fourth embodiment]
[1304] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[1305] 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.
[1306] 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).
[1307] 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.
[1308] 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.
[1309] 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).
[1310] 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.
[1311] 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.
[1312] 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.
[1313] 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.
[1314] 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.
[1315] 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.
[1316] 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."
[1317] overview
[1318] The present invention is a system that allows users to easily search for food stalls that meet certain conditions, such as a specific area, type of cuisine, and price range. This system uses a generative AI means to recommend the most suitable food stall, and can also communicate information to users in a dialogue format with the personality of a regular customer who speaks Hakata dialect. Specific embodiments of the system are described below.
[1319] System Configuration
[1320] This system mainly consists of the following parts:
[1321] 1. User Device
[1322] 2. Server
[1323] 3. Natural Language Processing Technology
[1324] 4. Database
[1325] 5. Generation AI means
[1326] 6. Means of notification
[1327] 1. User Device
[1328] A user device is a device used by a user to input and send messages using a LINE Official Account, such as a smartphone, tablet, or PC.
[1329] 2. Server
[1330] The server is a central computer system that receives messages sent from user devices, analyzes them, and processes them using database searches and generation AI methods. The server is connected to user devices via a network.
[1331] 3. Natural Language Processing Technology
[1332] Natural language processing technology runs on the server and analyzes messages from users to extract necessary keywords. For example, the keywords "Nakasu" and "ramen" are extracted from a user message such as "Tell me about a good ramen stand in Nakasu tonight."
[1333] 4. Database
[1334] The database stores information about food stalls. This information consists of attributes such as area, type of food, price range, and review rating. Appropriate candidates are retrieved from the database according to the user's request.
[1335] 5. Generation AI means
[1336] The generative AI method is used to select the best one from multiple candidates retrieved from the database, for example, by taking into account the stall's review ratings and the user's past preferences to select the most suitable stall.
[1337] 6. Means of notification
[1338] The notification method provides users with information about the selected food stalls in a dialogue format in Hakata dialect. Providing information in a user-friendly manner improves the user experience. For example, a message such as "I recommend this, so come and have a drink at Hakata Food Stall Yoshi-chan" is generated and sent to users via the official LINE account.
[1339] Specific examples
[1340] 1. Submitting a User Request
[1341] The user sends a message via the official LINE account saying, "Please tell me where I can find a good ramen stand in Nakasu." The user's device receives this message and sends it to the server.
[1342] 2. Message Analysis
[1343] The server analyzes the received message using natural language processing technology and extracts the keywords "Nakasu" and "ramen."
[1344] 3. Database Search
[1345] The server searches the database based on the extracted keywords, and finds 10 food stalls that match the criteria "Nakasu" and "ramen."
[1346] 4. Selecting the best food stall
[1347] The server inputs the 10 candidates into the generation AI means and selects the most suitable food stall taking into consideration evaluation reviews, price range, etc. The generation AI means selects "Hakata Yatai Yoshi-chan" as the most suitable food stall.
[1348] 5. Notification of recommended food stalls
[1349] The server then provides the selected food stall information to the user in a dialogue format in Hakata dialect. A message such as "I recommend this place, so why not grab a drink at Hakata Food Stall Yoshi-chan" is generated and sent to the user via the official LINE account.
[1350] Through the above embodiments, the present invention helps users easily find suitable and satisfying food stalls and provides information in a friendly, interactive manner.
[1351] The processing flow will be explained below.
[1352] Specific processing steps of the program
[1353] Step 1:
[1354] The user enters a message. The user sends a message to the LINE official account, such as "Tell me about a good ramen stand in Nakasu."
[1355] Step 2:
[1356] The device receives the message. The LINE server receives the message from the user and sends it to the analysis server.
[1357] Step 3:
[1358] The server receives the message. The analysis server receives the message data from the LINE server.
[1359] Step 4:
[1360] The server performs natural language processing. The analysis server uses natural language processing technology to analyze the received message and extract the keywords "Nakasu" and "ramen."
[1361] Step 5:
[1362] The server generates a search query. Based on the keywords extracted by the analysis server, a search query is generated for the food stall database. Example: "Area = 'Nakasu' AND Cuisine = 'Ramen' AND Rating > 4"
[1363] Step 6:
[1364] The server searches the database. The server sends the generated query to the database and retrieves candidates that match the conditions "Nakasu" and "ramen" from the database.
[1365] Step 7:
[1366] The server receives the search results. The server receives the candidate list obtained from the database.
[1367] Step 8:
[1368] The server calls the generation AI, and the analysis server inputs the search result data into the generation AI and instructs it to select the best candidate.
[1369] Step 9:
[1370] Generative AI evaluates the data. Generative AI evaluates each stall on the candidate list and selects the most suitable stall, taking into account reviews and price range.
[1371] Step 10:
[1372] The server obtains the AI's selection results. The analysis server receives the optimal food stall information selected by the generation AI (e.g., Hakata Food Stall Yoshi-chan).
[1373] Step 11:
[1374] The server generates a message in Hakata dialect. The analysis server uses the selected food stall information to generate a conversational message in Hakata dialect. Example: "I recommend this, so let's have a drink at Hakata Food Stall Yoshi-chan."
[1375] Step 12:
[1376] The server sends the message to the user's device. The message generated by the analysis server is sent to the user's device via the LINE server.
[1377] Step 13:
[1378] The device notifies the user of the message. The user's device displays the message received from the LINE server.
[1379] Through the above steps, the user can easily obtain information about food stalls that meet his or her needs and receive the information in a friendly, interactive format.
[1380] Example 1
[1381] 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."
[1382] Conventional food stall search systems have difficulty in quickly and accurately providing information that matches the user's requirements, resulting in issues with the accuracy of search results and user experience. In addition, the information provided is expressed in general standard Japanese, which lacks the familiarity specific to the region.
[1383] 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.
[1384] In this invention, the server includes means for receiving input from a user, means for analyzing the input using natural language processing technology to obtain important extracted information, and means for searching information sources based on the extracted information to obtain multiple results. This makes it possible to quickly and accurately provide information that matches the user's requirements, and improves the user experience by providing friendly notifications in local languages.
[1385] The "means for receiving input from the user" is a function that provides an interface for the user to input requests to the system and transmits the input information to the server.
[1386] "Natural language processing technology" is a technology for analyzing received user input and extracting important information and keywords.
[1387] "Important extracted information" refers to keywords and phrases necessary for search and processing, extracted from user input using natural language processing technology.
[1388] The "means for searching information sources" is a function for querying a specific database or information resource based on the extracted information and searching for relevant information therein.
[1389] The "means for obtaining multiple results" is a function for obtaining multiple candidate information items that meet the conditions and are obtained when searching information sources.
[1390] A "generative AI model" is an artificial intelligence model that selects the optimal candidate from multiple obtained results.
[1391] "Regional words" are dialects and expressions used in a particular region, and are words that convey information in a user-friendly manner.
[1392] A "communication application" is application software for sending and receiving messages over the Internet.
[1393] An embodiment of the present invention is described below.
[1394] This system allows users to easily search for food stalls that fit specific criteria, such as area, type of cuisine, price range, etc. The system uses a generative AI model to recommend the most suitable food stalls and can communicate information to users in a dialogue format using local language.
[1395] System Configuration
[1396] The system mainly consists of the following elements:
[1397] 1. User Device
[1398] 2. Server
[1399] 3. Natural Language Processing Engine
[1400] 4. Database
[1401] 5. Generative AI Models
[1402] 6. Means of notification
[1403] 1. User Device
[1404] A user device is a device that users use to input and send messages. This includes smartphones, tablets, and PCs. For example, you can send a message using a LINE official account.
[1405] 2. Server
[1406] The server is a central computer system that receives messages sent from user devices, analyzes them, and processes them using database searches and generative AI methods. The server communicates with user devices via the Internet.
[1407] 3. Natural Language Processing Engine
[1408] The natural language processing engine running on the server analyzes messages from users and extracts necessary keywords. For example, from a user message such as "Tell me about a good ramen stand in Nakasu tonight," the engine extracts the keywords "Nakasu" and "ramen."
[1409] 4. Database
[1410] The database stores information about food stalls, which consist of attributes such as area, type of food, price range, and review rating. Based on the user's request, the system retrieves suitable candidates from the database.
[1411] 5. Generative AI Models
[1412] The generative AI model is used to select the best one from multiple candidates retrieved from the database, for example, taking into account the stall's review ratings and the user's past preferences to select the most suitable stall.
[1413] 6. Means of notification
[1414] The notification method will provide users with information about the selected food stall in a local language. For example, a message such as "I recommend this, so come and have a drink at Hakata Food Stall Yoshi-chan" will be generated and sent to users via the official LINE account.
[1415] Specific examples
[1416] 1. Submitting a User Request
[1417] The user sends a message via the official LINE account saying, "Please tell me where I can find a good ramen stand in Nakasu." The user's device receives this message and sends it to the server.
[1418] 2. Message Analysis
[1419] The server analyzes the received message using a natural language processing engine and extracts the keywords "Nakasu" and "ramen."
[1420] 3. Database Search
[1421] The server searches the database based on the extracted keywords, and finds multiple food stalls that match the criteria "Nakasu" and "ramen."
[1422] 4. Selecting the best food stall
[1423] The server inputs multiple candidates into the generative AI model and selects the most suitable food stall, taking into consideration factors such as reviews and price range. The generative AI model selects "Hakata Yatai Yoshichan" as the most suitable food stall.
[1424] 5. Notification of recommended food stalls
[1425] The server provides the selected food stall information to the user in the region's language, generating a message such as "I recommend this place, so come have a drink at Hakata Food Stall Yoshi-chan" and sending it to the user via the official LINE account.
[1426] Prompt Sentence Examples
[1427] "When a user sends a message on LINE saying, 'Please tell me where to find a delicious ramen stall in Nakasu,' please explain how you would analyze this message and how you would select the most suitable stall and provide the information."
[1428] Through the above embodiments, the present invention helps users easily find suitable and satisfying food stalls and provides information in a friendly, interactive manner.
[1429] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1430] Step 1: Submitting a User Request
[1431] A user sends a message through a LINE official account that includes a specific area and type of cuisine. The user's device inputs this message into the LINE Platform, which then sends it to the server. The input is, for example, a message like "Please tell me where I can find a good ramen stand in Nakasu," and the output is that this message is sent to the server via the LINE Platform.
[1432] Specific behavior:
[1433] The user launches the LINE app.
[1434] Enter your request in the message input field and press the send button.
[1435] Step 2: Receiving a message
[1436] The server receives messages sent from user devices via the Internet. At this stage, the server retrieves the messages using the LINE Official Account API and temporarily stores them. The input is the message sent by the user, and the output is the message stored in the server's message queue.
[1437] Specific behavior:
[1438] The server periodically checks for new messages.
[1439] Receives messages and adds them to queues that it manages.
[1440] Step 3: Parse the message
[1441] The server analyzes the received message using a natural language processing engine (e.g., SpaCy or NLTK) and extracts important keywords. The input is the received message, and the output is the extracted keywords "Nakasu" and "Ramen."
[1442] Specific behavior:
[1443] Start the natural language processing engine.
[1444] Tokenize the message and perform entity identification.
[1445] Keywords are extracted and saved for database searching.
[1446] Step 4: Database Search
[1447] The server searches the database based on the extracted keywords. It generates an SQL query to retrieve data that matches the criteria. The input is the extracted keywords "Nakasu" and "ramen," and the output is a list of information about the corresponding food stalls.
[1448] Specific behavior:
[1449] Establish a database connection (e.g. MySQL, PostgreSQL).
[1450] Generate SQL queries to search the database.
[1451] Search results are temporarily stored.
[1452] Step 5: Select the best stall
[1453] The server calls a generative AI model (e.g., GPT-4) and inputs the search result stall information and evaluation criteria. The generative AI model then recommends the optimal stall based on this. The input is the search result list and evaluation criteria, and the output is the optimal stall, "Hakata Yatai Yoshichan."
[1454] Specific behavior:
[1455] Invoke a generative AI model.
[1456] Provide input data to the model and perform the model's operations.
[1457] Select the best candidate from the model.
[1458] Step 6: Notification of recommended food stalls
[1459] The server notifies the user of the selected food stall information in the region's specific language. It generates a message using the LINE official account's API and sends it to the user. The input is the optimal food stall information "Hakata Yatai Yoshi-chan," and the output is a message written in the region's specific language, "This is my recommendation, so come and have a drink at Hakata Yatai Yoshi-chan."
[1460] Specific behavior:
[1461] Generate standard phrases in Hakata dialect using a generative AI model.
[1462] Send messages using the LINE Official Account API.
[1463] Through the above processing steps, the user can easily obtain information about food stalls that meet the user's requirements, and can receive the information in a friendly, interactive format.
[1464] (Application example 1)
[1465] 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."
[1466] There is a lack of a system that allows users to easily find information about food stalls and other restaurants in a specific area. As a result, users have to spend a lot of time and effort to find the right option from the many options available. Furthermore, if the information provided is not user-friendly, the user experience may be impaired.
[1467] 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.
[1468] In this invention, the server includes means for receiving a request from a user, means for analyzing the request using natural language processing technology and extracting conditions, means for searching a database based on the conditions and obtaining multiple options, generation AI means for selecting the optimal option from the options, means for notifying the user of the selected option in a predetermined regional dialect, and means for providing the user with information about the selected option in an interactive format. This enables the user to quickly find the optimal restaurant that meets their requirements and receive information in a friendly interactive format.
[1469] "Means for receiving requests from a user" refers to the function of providing an interface for a user to input specific requests or wishes and sending the input data to a server.
[1470] "Means of analyzing and extracting conditions using natural language processing technology" refers to the technical process of analyzing the user's input text and identifying necessary keywords and requirements.
[1471] "Means for searching a database based on conditions and obtaining multiple options" refers to the process of searching a database for information that matches the extracted conditions and obtaining multiple candidates accordingly.
[1472] "Generative AI means for selecting optimal options" refers to the process of using artificial intelligence to select the most suitable candidate from multiple obtained options based on the user's requirements and evaluation criteria.
[1473] "Means of notifying the user in a pre-set regional dialect" refers to a function that conveys information about selected candidates to the user in a dialect used in a specific region.
[1474] The term "means for providing information to a user in an interactive manner" refers to a method for providing information through interactive communication with a user.
[1475] "Communications application" refers to a software platform that enables users to exchange messages and obtain information.
[1476] This invention is a system that allows users to easily search for food stalls and restaurants that meet specific criteria, such as area, type of cuisine, and price range, and receive that information in a user-friendly manner. This system is composed of a user terminal, a server, natural language processing technology, a database, a generation AI means, a notification means, and a dialogue means.
[1477] User terminal
[1478] The user terminal is typically a smartphone, tablet, or PC, and provides an interface for the user to input their specific needs and wishes, allowing the user to easily input and submit their request.
[1479] server
[1480] The server is a central computer system that receives and analyzes requests sent from user terminals. The server has the following functions:
[1481] Natural language processing technology: Using the OpenAI API, we analyze user requests and extract necessary keywords and conditions.
[1482] Database search: Using an SQLite database, search for food stall and restaurant information that matches the analyzed conditions.
[1483] Generative AI means: Select the most suitable candidate from the multiple options obtained based on the user's requirements and evaluation criteria.
[1484] Notification method: Information about the selected candidate is notified to the user through a communication application in the dialect used in the specific region.
[1485] Interaction means: Provide information through interactive communication with the user.
[1486] Natural language processing technology explained
[1487] The server receives messages from users and analyzes them using natural language processing technology. Specifically, it uses the OpenAI API to analyze the text and extract necessary keywords (e.g., "Nakasu" or "ramen").
[1488] Database Search Description
[1489] Based on the analyzed keywords, the server searches an SQLite database to retrieve information on multiple relevant food stalls and restaurants, including details such as area, type of cuisine, price range, and review ratings.
[1490] Description of Generative AI Method
[1491] The server inputs the obtained multiple options into the generation AI (OpenAI API) and selects the best candidate based on the user's past preferences and evaluation criteria. For example, "Hakata Yatai Yoshichan" is selected based on review ratings and price range.
[1492] Description of notification and interaction methods
[1493] The server then provides the user with information about the selected candidates in a dialect such as Hakata dialect. For example, a message such as "Hey, what do you recommend? Let's grab a drink at Hakata Yatai Yoshi-chan" is generated and sent to the user via a communication application such as LINE. Additionally, when the user asks additional questions via interactive means, the server provides friendly information in a similar manner.
[1494] Specific examples
[1495] When a user sends a request such as "Tell me about a good ramen stall in Nakasu," the server uses natural language processing technology to extract the keywords "Nakasu" and "ramen." It then searches for relevant stall information in an SQLite database, and uses a generation AI to select "Hakata Yatai Yoshi-chan" as the best candidate. It then generates a message in Hakata dialect saying, "I recommend this place, so let's have a drink at Hakata Yatai Yoshi-chan," and notifies the user via LINE.
[1496] Prompt Sentence Examples
[1497] "Generate a message for the user with the personality of a regular customer who speaks Hakata dialect.
[1498] Conditions: Recommended food stall "Hakata Yatai Yoshichan"
[1499] Prompt: "My friend recommended that we have a drink at Hakata Yatai Yoshi-chan."
[1500] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1501] Step 1:
[1502] Users use the smartphone app or LINE official account to enter and submit requests related to a specific area, cuisine, and price range.
[1503] Input: User request data (e.g., "Tell me about a good ramen stand in Nakasu.")
[1504] Output: The request data sent to the server
[1505] Step 2:
[1506] The server receives the request from the user and analyzes it using natural language processing technology.
[1507] Input: User request data
[1508] Output: Extracted keywords (e.g. "Nakasu" "Ramen")
[1509] What it does: It uses the OpenAI API to analyze the text of the request and extract important keywords.
[1510] Step 3:
[1511] The server searches the SQLite database based on keywords and retrieves information on multiple food stalls.
[1512] Input: Extracted keywords (e.g., "Nakasu" and "Ramen")
[1513] Output: A list of relevant stall information (e.g., multiple stall candidates)
[1514] Specific operation: Execute SQLite database query to search and retrieve stall information matching keywords.
[1515] Step 4:
[1516] The server inputs the acquired stall information into the generation AI and selects the most suitable candidate.
[1517] Input: List of food stall information, user's past preference information (e.g., review rating, price range)
[1518] Output: Optimal food stall information (e.g. "Hakata Food Stall Yoshichan")
[1519] Specific operation: Using a generative AI model (OpenAI API), the optimal stall is selected from a list of candidates based on evaluation criteria.
[1520] Step 5:
[1521] The server notifies the user of the selected food stall information in a local dialect such as Hakata dialect.
[1522] Input: Best food stall information
[1523] Output: A notification message written in a dialect (e.g., "My recommendation: grab a drink at Hakata Yatai Yoshi-chan.")
[1524] Specific operation: Using generative AI, the selected food stall information is expressed in a friendly manner in the local dialect, and a message is generated.
[1525] Step 6:
[1526] The server generates a notification message and sends it to the user via a communication application such as LINE.
[1527] Input: Notification message written in dialect
[1528] Output: Notification message displayed on the user's terminal
[1529] Specific behavior: Uses the LINE Messaging API to send the generated dialect message to the user's LINE account.
[1530] 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.
[1531] overview
[1532] This invention relates to a system that provides food stall information tailored to the user's needs. In particular, it uses a generative AI to select the most suitable food stall, an emotion engine to recognize the user's emotions, and provides information according to the emotions. This system notifies the user of information in a friendly dialogue format, improving the user experience.
[1533] System Configuration
[1534] The system consists of the following parts:
[1535] 1. User Device
[1536] 2. Server
[1537] 3. Natural Language Processing Technology
[1538] 4. Database
[1539] 5. Generation AI means
[1540] 6. Emotion Engine
[1541] 7. Means of notification
[1542] 1. User Device
[1543] A user device is a device used by a user to input and send messages using a LINE Official Account, such as a smartphone, tablet, or PC.
[1544] 2. Server
[1545] The server is a central computer system that receives messages sent from user devices, analyzes them, and processes them using database searches and generation AI methods. The server is connected to user devices via a network.
[1546] 3. Natural Language Processing Technology
[1547] Natural language processing technology runs on the server and analyzes messages from users to extract necessary keywords. For example, the keywords "Nakasu" and "ramen" are extracted from a user message such as "Tell me about a good ramen stand in Nakasu."
[1548] 4. Database
[1549] The database stores information about food stalls. This information consists of attributes such as area, type of food, price range, and review rating. Appropriate candidates are retrieved from the database according to the user's request.
[1550] 5. Generation AI means
[1551] The generative AI method is used to select the best one from multiple candidates retrieved from the database, taking into account review ratings and users' past preferences to select the best stall.
[1552] 6. Emotion Engine
[1553] The emotion engine is a technology that analyzes the user's emotional state from their messages and reactions. Based on the results of this analysis, the tone and style of the notification content can be adjusted. For example, if the user is in a happy mood, a cheerful message will be generated, and if the user is depressed, a gentler message will be generated.
[1554] 7. Means of notification
[1555] The notification method notifies the user of the selected food stall information in a dialogue format in Hakata dialect and in a tone that reflects the user's emotions. By delivering information in a user-friendly manner, the user experience is improved. For example, a message such as "Here's my recommendation, come have a drink at Hakata Food Stall Yoshi-chan" is generated and sent to the user via the official LINE account.
[1556] Specific examples
[1557] 1. Submitting a User Request
[1558] Users can send a message via the official LINE account saying, "Please tell me where I can find a good ramen stand in Nakasu."
[1559] 2. Message Analysis
[1560] The server analyzes the received message using natural language processing technology and extracts the keywords "Nakasu" and "ramen."
[1561] 3. Database Search
[1562] The server searches the database based on the extracted keywords, and finds 10 food stalls that match the criteria "Nakasu" and "ramen."
[1563] 4. Selecting the best food stall
[1564] The server inputs the 10 candidates into the generation AI means and selects the most suitable food stall taking into consideration evaluation reviews, price range, etc. The generation AI means selects "Hakata Yatai Yoshi-chan" as the most suitable food stall.
[1565] 5. User sentiment analysis
[1566] The server uses an emotion engine to analyze the user's emotional state from the message: if the user is in a happy state, it generates a message with a light tone.
[1567] 6. Notification of recommended food stalls
[1568] The server notifies the user of the selected food stall information in Hakata dialect, using a tone that reflects the user's emotions. For example, a message such as "I recommend this place, so come and have a drink at Hakata Food Stall Yoshi-chan" is generated and sent to the user via the official LINE account.
[1569] Through the above-described embodiments, the present invention helps users easily find suitable and satisfying food stalls, provides information in a friendly and interactive manner, and further improves individual user experience by providing information according to the user's emotions.
[1570] The processing flow will be explained below.
[1571] Specific processing steps of the program
[1572] Step 1:
[1573] The user enters a message. The user sends a message to the LINE official account saying, "Tell me about a good ramen stand in Nakasu."
[1574] Step 2:
[1575] The device receives the message. The LINE server receives the message from the user and sends it to the analysis server.
[1576] Step 3:
[1577] The server receives the message. The analysis server receives the message data from the LINE server.
[1578] Step 4:
[1579] The server performs natural language processing. The analysis server uses natural language processing technology to analyze the received message and extract the keywords "Nakasu" and "ramen."
[1580] Step 5:
[1581] The server generates a search query. Based on the keywords extracted by the analysis server, a search query is generated for the food stall database. Example: "Area = 'Nakasu' AND Cuisine = 'Ramen' AND Rating > 4"
[1582] Step 6:
[1583] The server searches the database. The server sends the generated query to the database and retrieves candidates that match the conditions "Nakasu" and "ramen" from the database.
[1584] Step 7:
[1585] The server receives the search results. The server receives the candidate list obtained from the database.
[1586] Step 8:
[1587] The server calls the generation AI, and the analysis server inputs the search result data into the generation AI and instructs it to select the best candidate.
[1588] Step 9:
[1589] Generative AI evaluates the data. Generative AI evaluates each stall on the candidate list and selects the most suitable stall, taking into account reviews and price range.
[1590] Step 10:
[1591] The server obtains the AI's selection results. The analysis server receives the optimal food stall information selected by the generation AI (e.g., Hakata Food Stall Yoshi-chan).
[1592] Step 11:
[1593] The server calls the emotion engine, and the analysis server inputs the user's message and past interactions into the emotion engine, instructing it to analyze the user's emotional state.
[1594] Step 12:
[1595] Emotion engine evaluates the emotional state: The emotion engine analyzes the content of the user's message and identifies the user's current emotional state (e.g., happy, sad, surprised, etc.).
[1596] Step 13:
[1597] The server generates a message based on the user's emotions. The analysis server uses the selected food stall information to generate a message in Hakata dialect with a tone and style that matches the user's emotional state. Example: "I recommend this place, so let's have a drink at Hakata Food Stall Yoshi-chan."
[1598] Step 14:
[1599] The server sends the message to the user's device. The message generated by the analysis server is sent to the user's device via the LINE server.
[1600] Step 15:
[1601] The device notifies the user of the message. The user's device displays the message received from the LINE server.
[1602] As a specific example of processing, if the user is in a happy state, the emotion engine generates a message with a "cheerful tone that makes you smile all the time." Conversely, if the user is sad, the message is adjusted to a "warm tone."
[1603] Through the above steps, the present invention allows users to easily obtain information about food stalls that meet their needs and receive information in a friendly, interactive format. Furthermore, by using an emotion engine, it is possible to provide information that corresponds to the user's emotions, improving the individual user experience.
[1604] Example 2
[1605] 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."
[1606] Conventional food stall information systems are unable to automatically select appropriate keywords when extracting the information users are looking for, and do not take the user's emotional state into consideration when providing information, making it difficult to provide the highly accurate information users desire. Furthermore, due to a lack of familiarity, the quality of the user experience has not been sufficiently improved. There is a need to solve these problems.
[1607] 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.
[1608] In this invention, the server includes means for receiving information from a user, means for analyzing the information using natural language processing technology and extracting keywords, means for searching a database based on the keywords and acquiring candidates, artificial intelligence generation means for selecting the most suitable candidate from the acquired candidates, means for notifying the user of the selected candidate in a predetermined dialect, and emotion analysis means for analyzing the user's emotional state and adjusting the content of the notification. This makes it possible to provide the user with highly accurate information that they desire, and also to provide friendly information that is responsive to the user's emotions.
[1609] "Means for receiving information from users" refers to interfaces and systems for receiving text or voice messages sent by users. Specifically, this refers to communication protocols and applications for exchanging information between smartphones or computers and servers.
[1610] "Natural language processing technology" refers to computer technology for understanding and analyzing human language. Specifically, it includes algorithms and software libraries for extracting important keywords and context from text.
[1611] "Keyword extraction means" refers to technologies and systems that analyze information received from users and identify important words and phrases that can be used as search and processing criteria.
[1612] "Means for searching a database and retrieving candidates" refers to the technology and system for searching for and retrieving appropriate data from stored information based on extracted keywords. Specifically, this includes database management systems and their search queries.
[1613] "Generative artificial intelligence means" refers to machine learning models and algorithms that generate results that best fit specific conditions based on input data. For example, it is a type of generative AI model.
[1614] "Dialect notification means" refers to technologies and systems that notify users of selected information in language that is familiar to a particular region or culture.
[1615] "Emotion analysis means" refers to technologies and systems that analyze users' comments and reactions and identify their emotional state (happiness, sadness, anger, etc.). Specifically, this includes text analysis algorithms and emotion recognition software.
[1616] MODE FOR CARRYING OUT THE INVENTION
[1617] This invention is a system that provides appropriate food stall information in response to a user's request, and is an interactive information provision system that notifies information taking into account the user's emotional state. Below, we will show how this system can be implemented in concrete terms.
[1618] overview
[1619] This system consists of a user terminal, a server, natural language processing technology, a database, a generative AI means, an emotion engine, and a notification means. This allows users to easily obtain appropriate and satisfying food stall information and receive it in a friendly, interactive format.
[1620] Hardware and software used
[1621] User devices: devices such as smartphones, tablets, and computers
[1622] Server: Cloud server (Amazon Web Services, Google Cloud Platform, etc.)
[1623] Natural language processing technology: Python's NLTK library, spaCy, etc.
[1624] Database: MySQL, PostgreSQL
[1625] Generative AI method: OpenAI's GPT-3
[1626] Emotion analysis technology: IBM Watson Tone Analyzer
[1627] Notification method: LINE API
[1628] Detailed processing
[1629] 1. Submitting a User Request:
[1630] A user sends a message via the LINE official account saying, "Please tell me where I can find a good ramen stand in Nakasu." By opening the LINE app on the user's device, typing and sending the message, this request is sent to the server.
[1631] 2. Message analysis:
[1632] The server receives messages from users and analyzes them using natural language processing technology (e.g., spaCy). Through this analysis, important keywords such as "Nakasu" and "ramen" are extracted.
[1633] 3. Search for food stall information:
[1634] The server searches the database based on the extracted keywords. For example, it generates an SQL query and executes it against the database (MySQL or PostgreSQL) to retrieve information about food stalls that match the criteria "Nakasu" and "ramen."
[1635] 4. Selecting the best stall:
[1636] The server inputs the acquired food stall information into a generation AI method (OpenAI's GPT-3) to select the most suitable food stall. At this time, additional information such as review ratings and price range is also used as evaluation criteria. GPT-3 selects "Hakata Yatai Yoshi-chan" as the best candidate.
[1637] 5. User sentiment analysis:
[1638] The server uses an emotion engine (IBM Watson Tone Analyzer) to analyze the user's message and determine the user's emotional state. This analysis reveals that the user is in a state of joy.
[1639] 6. Notification of recommended food stalls:
[1640] The server generates a message in Hakata dialect based on the selected food stall information, in a tone that reflects the user's emotions. For example, it might say, "I recommend this place, so let's have a drink at Hakata Food Stall Yoshi-chan." This message is sent to the user's device via the LINE API.
[1641] Specific examples
[1642] A user sends a message to the LINE official account saying, "Please tell me where I can find a good ramen stall in Nakasu," and the server receives it. The server analyzes the message using natural language processing technology and extracts the keywords "Nakasu" and "ramen." It then searches the database based on the extracted keywords and uses AI to generate the most suitable stall from the stall information that matches the criteria, selecting "Hakata Yatai Yoshi-chan." When the emotion engine analyzes that the user's emotion is joy, the server generates a message in Hakata dialect saying, "I recommend this, so come and have a drink at Hakata Yatai Yoshi-chan," and notifies the user via the LINE official account.
[1643] In this way, the present invention allows users to easily find a suitable and satisfying stall, and provides friendly information according to their emotions.
[1644] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1645] System program processing flow
[1646] Step 1:
[1647] Receiving messages from users
[1648] Input: The user enters the message "Please tell me where to find a good ramen stand in Nakasu" into the LINE app and presses the send button.
[1649] Specific operation: A user sends a message to the LINE official account. This message is sent to the server via the network.
[1650] Output: The server receives the message from the user.
[1651] Step 2:
[1652] Message Parsing
[1653] Input: A message received by the server saying "Please tell me where I can find a good ramen stand in Nakasu."
[1654] How it works: The server analyzes the message using natural language processing technology (such as Python's NLTK library or spaCy). Through the analysis, keywords such as "Nakasu" and "ramen" are extracted.
[1655] Output: The server extracts the keywords ("Nakasu" and "ramen").
[1656] Step 3:
[1657] Search the food stall information database
[1658] Input: Extracted keywords "Nakasu" and "Ramen".
[1659] Specific operation: The server generates and executes an SQL query against the database. For example, it uses a query such as "SELECT FROM food stall information WHERE area = 'Nakasu' AND cuisine = 'Ramen'".
[1660] Output: The server retrieves stall information that matches the conditions (for example, 10 items).
[1661] Step 4:
[1662] Selection of the best food stall
[1663] Input: Information on 10 food stalls retrieved from the database.
[1664] Specific operation: The server generates a prompt sentence for the generative AI means (OpenAI's GPT-3) and inputs the stall information. It creates a prompt sentence that includes elements such as "past review ratings" and "price range."
[1665] Output: The generation AI outputs “Hakata Yatai Yoshi-chan” as the optimal food stall.
[1666] Step 5:
[1667] User sentiment analysis
[1668] Input: The user's first message: "Can you tell me where to find a good ramen stand in Nakasu?"
[1669] Specific operation: The server uses an emotion engine (IBM Watson Tone Analyzer) to analyze the user's message. Through the analysis, it determines that the user is in the emotional state of "joy."
[1670] Output: The server gets the emotion analysis result (happiness state).
[1671] Step 6:
[1672] Notification of recommended food stalls
[1673] Input: Optimal food stall information "Hakata Food Stall Yoshi-chan" and emotion analysis results (happiness state).
[1674] Specific operation: The server generates a message in Hakata dialect based on this information. For example, it generates a message with the following content: "I recommend this, so let's have a drink at Hakata Yatai Yoshi-chan." The generated message is sent to the user's device using the LINE API.
[1675] Output: The user receives a message in the LINE app containing information about "Hakata Yatai Yoshichan."
[1676] summary
[1677] These steps realize a system that provides users with the accurate food stall information they desire and notifies them in a friendly, interactive format.
[1678] (Application example 2)
[1679] 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."
[1680] In conventional information provision systems, there are methods for selecting the most suitable candidate according to the user's request, but the information provided does not take into account the user's emotional state. As a result, the provided information may not be appropriate for the user's emotions, which has led to a problem of not sufficiently improving the user experience.
[1681] The identification process by the identification processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for receiving a message from a user, means for analyzing the message using natural language processing technology and extracting keywords, means for searching a database based on the keywords and obtaining multiple candidates, generation AI means for selecting the most suitable candidate from the candidates, emotion engine means for analyzing the user's emotional state, and means for notifying the user of the selected candidate in a tone corresponding to the user's emotion. This makes it possible to provide appropriate information according to the user's emotional state, thereby improving the user experience.
[1682] The "means for receiving messages from users" is a function for receiving text or voice messages sent by users through the terminal.
[1683] "Natural language processing technology" is a technology that analyzes messages received from users, understands their meaning, and extracts important keywords.
[1684] The "means for searching the database" is a function for searching information in the database based on the extracted keywords and obtaining multiple matching candidates.
[1685] The "generative AI means" is an artificial intelligence function that selects the most suitable item from multiple searched candidates, taking into consideration review ratings, price range, location information, and the user's past preferences.
[1686] The "emotion engine means" is a function for analyzing the user's emotional state from their message and reaction, and adjusts the tone and style of the notification content according to the user's emotions.
[1687] The "means for notifying the selected candidate in a tone corresponding to the user's emotion" is a function for conveying the most suitable candidate to the user in an appropriate tone based on the user's emotional state analyzed by the emotion engine means.
[1688] MODE FOR CARRYING OUT THE INVENTION
[1689] The present invention is a system that provides information according to a user's request, and in particular, provides information adapted to the user's emotional state by using a generation AI and an emotion engine. A specific embodiment of the present invention will be described below.
[1690] 1. System Configuration
[1691] The system consists of the following parts:
[1692] User terminal: A device such as a smartphone, smart glasses, or head-mounted display that provides an interface for users to input messages and voice commands.
[1693] Server: A central computer system that receives, analyzes, and processes messages sent from user terminals. The server communicates with user terminals via a network.
[1694] Natural language processing technology: This technology runs on the server and analyzes messages from users to extract necessary keywords. For example, the BERT model or GPT model is used for this technology.
[1695] Database: A database that stores store information, user preference data, etc.
[1696] Generative AI methods: AI techniques used to select the best candidate from multiple candidates, including the GPT-3 model.
[1697] Emotion Engine: A technology for analyzing the emotional state of a user's messages and reactions. This is done using a sentiment analyzer.
[1698] Notification method: A method of notifying information in a tone that corresponds to the user's emotions, such as LINE or other messaging applications.
[1699] 2. Program processing content
[1700] Receiving and analyzing
[1701] The server receives messages and voice commands sent from the user's device. For example, a user might send a request such as, "Please tell me about a recommended cafe near X station." The server analyzes this message using natural language processing technology and extracts the keywords "X station" and "cafe."
[1702] Database search
[1703] The server searches the database based on the extracted keywords. For example, 20 store listings matching the criteria "X station" and "cafe" are found.
[1704] Candidate selection
[1705] Next, the server inputs the 20 candidates into the generation AI means, which selects the best one by taking into consideration review ratings, price range, location information, the user's past preferences, etc. The generation AI means selects "Cafe ABC" as the best store.
[1706] Sentiment analysis and notification
[1707] The server uses an emotion engine to analyze the user's emotional state from their messages and recent actions. If the user is in a positive mood, it generates a message with a cheerful tone. For example, the server might generate a message such as, "Good work! How about Cafe ABC near Station X? It has great reviews!" and notify the user via LINE or another messaging application.
[1708] 3. Specific Examples
[1709] Consider the case where a user sends a request saying, "Please tell me some recommended cafes near X Station." The server receives this request and extracts the keywords "X Station" and "cafe." As a result of the database search, 20 candidates are found, from which the AI generation method selects the most suitable store, "Cafe ABC." If the user is in good spirits, the server sends a cheerful message saying, "Good work! How about Cafe ABC near X Station? It has great reviews!"
[1710] In this way, the system of the present invention can provide appropriate information according to the user's needs and emotional state, thereby improving the user experience.
[1711] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1712] Step 1:
[1713] A user sends a request via smartphone or smart glasses, such as "Please tell me a recommended cafe near XX station." The user device sends this message to the server. The input is the user's message, and the output is the message sent to the server.
[1714] Step 2:
[1715] The server analyzes the received user message using natural language processing technology (e.g., the BERT model). Specifically, it extracts the keywords "XX Station" and "cafe" from the message. The input is the received message, and the output is the extracted keywords.
[1716] Step 3:
[1717] The server searches a database based on the extracted keywords. The database stores store information and user preference data. As a result of the search, 20 store listings that match the criteria are retrieved. The input is the keywords, and the output is the search results of multiple store listings.
[1718] Step 4:
[1719] The server inputs the 20 candidates into a generative AI method (e.g., GPT-3 model) and selects the optimal store by taking into consideration review ratings, price range, location information, and the user's past preferences. Specifically, the generative AI evaluates the data for each store and selects the optimal store, "Cafe ABC." The input is information about multiple stores, and the output is information about the optimal store.
[1720] Step 5:
[1721] The server uses an emotion engine to analyze the user's emotional state from their messages and recent actions. For example, an emotion analyzer identifies emotional states such as "cheerful" or "depressed" from a message. The input is the user's message, and the output is the analyzed emotional state.
[1722] Step 6:
[1723] The server generates notification content based on the optimal store information and the user's emotional state. Specifically, if the user is in good spirits, a cheerful message such as "Good work! How about Cafe ABC near Station X? It has great reviews!" is generated. The input is the optimal store information and the analyzed emotional state, and the output is the generated notification message.
[1724] Step 7:
[1725] The server sends the generated notification message to the user's device via LINE or other messaging applications. The user's device receives this message and displays it to the user. The input is the generated message, and the output is the message sent to the user's device.
[1726] The above are the specific processing steps of the system program that realizes this application example. This makes it possible to provide appropriate information according to the user's needs and emotional state, thereby improving the user experience.
[1727] 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.
[1728] 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.
[1729] 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.
[1730] 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.
[1731] 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.
[1732] 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.
[1733] 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).
[1734] 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.
[1735] 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."
[1736] 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.
[1737] 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).
[1738] 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.
[1739] 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.
[1740] 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.
[1741] 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.
[1742] 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.
[1743] 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.
[1744] 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.
[1745] 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.
[1746] 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.
[1747] 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.
[1748] The following is further disclosed regarding the above embodiment.
[1749] (Claim 1)
[1750] means for receiving a message from a user;
[1751] means for analyzing the message using natural language processing technology and extracting keywords;
[1752] A means for searching a database based on the keyword to obtain a plurality of candidates;
[1753] A generating AI means for selecting an optimal candidate from the candidates;
[1754] means for notifying a user of the selected candidate in a preset dialect;
[1755] A system including:
[1756] (Claim 2)
[1757] 2. The system according to claim 1, further comprising means for extracting the keywords based on a user request.
[1758] (Claim 3)
[1759] 10. The system of claim 1, wherein the notification means notifies the user of the selected candidate using a messaging application.
[1760] (Claim 4)
[1761] 2. The system according to claim 1, wherein said analyzing means analyzes the user's message using natural language processing technology to identify the user's request.
[1762] (Claim 5)
[1763] 10. The system of claim 1, wherein the candidate selection generative AI means uses a machine learning algorithm to evaluate and score the candidates.
[1764] (Claim 6)
[1765] 10. The system of claim 1, wherein the system provides information about food stalls.
[1766] (Claim 7)
[1767] The system of claim 1, wherein the generating AI means used to select the candidates selects the best candidates taking into account criteria such as reviews and price range.
[1768] (Claim 8)
[1769] 2. The system according to claim 1, wherein the analysis means identifies the area, type of cuisine, and price range based on keywords extracted from the user's message.
[1770] (Claim 9)
[1771] 2. The system according to claim 1, wherein the notification means notifies the user in a preset dialect using a personality modeled after a character of a downtown regular customer.
[1772] (Claim 10)
[1773] 2. The system according to claim 1, wherein when notifying the user of the candidates, the system provides the user with additional information about the stall (such as a map and a detailed menu).
[1774] "Example 1"
[1775] (Claim 1)
[1776] means for receiving input from a user;
[1777] means for analyzing the input using natural language processing techniques to obtain important extracted information;
[1778] means for searching information sources based on the extracted information and obtaining a plurality of results;
[1779] a generative AI model that selects an optimal result from the results; and
[1780] means for notifying the user of the selected result in a language specific to a predetermined region;
[1781] A system including:
[1782] (Claim 2)
[1783] 10. The system of claim 1, further comprising: means for obtaining the extracted information based on a user request.
[1784] (Claim 3)
[1785] 2. The system of claim 1, wherein the notification means notifies the user of the selected result using a communication application.
[1786] "Application Example 1"
[1787] (Claim 1)
[1788] means for receiving a request from a user;
[1789] means for analyzing the request using natural language processing technology and extracting conditions;
[1790] A means for searching a database based on the conditions and obtaining a plurality of options;
[1791] A generating AI means for selecting an optimal option from the options;
[1792] means for notifying the user of the selected option in a dialect of a predetermined region;
[1793] means for interactively providing information to a user about said selected option;
[1794] A system including:
[1795] (Claim 2)
[1796] The system of claim 1 , further comprising: means for extracting the conditions based on user preferences.
[1797] (Claim 3)
[1798] 10. The system of claim 1, wherein the notification means notifies the user of the selected option using a communication application.
[1799] "Example 2: Combining Emotion Engines"
[1800] (Claim 1)
[1801] means for receiving information from a user;
[1802] A means for analyzing the information using natural language processing technology and extracting keywords;
[1803] A means for searching a database based on the keyword to obtain candidates;
[1804] a generating artificial intelligence means for selecting an optimal candidate from the acquired candidates;
[1805] means for notifying a user of the selected candidate in a preset dialect;
[1806] emotion analysis means for analyzing the emotional state of the user and adjusting the notification content;
[1807] A system including:
[1808] (Claim 2)
[1809] 10. The system of claim 1, further comprising: means for extracting the keywords based on a user request.
[1810] (Claim 3)
[1811] 10. The system of claim 1, wherein the notification means notifies the user of the selected candidate using a messaging application.
[1812] "Application example 2 when combining emotion engines"
[1813] (Claim 1)
[1814] means for receiving a message from a user;
[1815] means for analyzing the message using natural language processing technology and extracting keywords;
[1816] a means for searching a database based on the keyword to obtain a plurality of candidates;
[1817] A generating AI means for selecting an optimal candidate from the candidates;
[1818] emotion engine means for analyzing the user's emotional state;
[1819] means for notifying the user of the selected candidate in a tone corresponding to the user's emotion;
[1820] A system including:
[1821] (Claim 2)
[1822] 2. The system according to claim 1, further comprising means for extracting the keywords based on a user request.
[1823] (Claim 3)
[1824] 10. The system of claim 1, wherein the notification means notifies the user of the selected candidate using a messaging application. [Explanation of symbols]
[1825] 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 receiving a message from a user; means for analyzing the message using natural language processing technology and extracting keywords; a means for searching a database based on the keyword to obtain a plurality of candidates; A generating AI means for selecting an optimal candidate from the candidates; means for notifying a user of the selected candidate in a preset dialect; A system including:
2. 2. The system according to claim 1, further comprising means for extracting the keywords based on a user's request.
3. 2. The system of claim 1, wherein the notification means notifies the user of the selected candidate using a messaging application.
4. 2. The system according to claim 1, wherein said analyzing means analyzes the user's message using natural language processing technology to identify the user's request.
5. The system of claim 1 , wherein the candidate selection generative AI means uses a machine learning algorithm to evaluate and score the candidates.
6. The system of claim 1 , wherein the system provides information about food stalls.
7. The system of claim 1 , wherein the generating AI means used to select the candidates selects the optimal candidates taking into account criteria such as evaluation reviews and price range.
8. The system according to claim 1 , wherein the analysis means identifies the area, type of cuisine, and price range based on keywords extracted from the user's message.
9. 2. The system according to claim 1, wherein the notification means notifies the user in a preset dialect using a personality modeled after a character of a downtown regular customer.
10. The system of claim 1 , wherein when notifying the user of the candidates, the system provides the user with additional information about the food stall.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A