system
The system addresses the inefficiencies in messaging applications by automating information searches and ad display, providing quick and relevant responses with integrated ad auctions.
Patent Information
- Application Number
- JP2024117341
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-07-22
- Publication Date
- 2026-02-03
AI Technical Summary
Existing messaging applications require manual browser navigation for information searches, which is tedious, and lack effective methods for displaying relevant advertisements, hindering user experience and advertising opportunities.
A system that automatically receives user messages, analyzes them using natural language processing to generate search queries, retrieves results, converts them into colloquial responses, and conducts ad auctions to include high-bid advertisements, improving information efficiency and advertisement relevance.
Users can quickly obtain high-quality information and relevant advertisements, enhancing user experience and advertising effectiveness.
Smart Images

Figure 2026016251000001_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] In today's world, quickly and accurately obtaining information is crucial in life and business. However, when users want to search for specific information within a messaging application, manually opening a browser and using a search engine can be a tedious process. Understanding the search results can also take a lot of time and effort. Furthermore, there are limited methods for displaying appropriate advertisements, which hinders the user experience. There is a need to address these issues, improve the user experience, and maximize advertising opportunities. [Means for solving the problem]
[0005] The present invention automatically receives messages sent by users and analyzes them using natural language processing means to generate appropriate search queries from the messages. The search queries are then sent to a search engine's API, and the retrieved search results are analyzed. Furthermore, the analysis results are converted into colloquial responses using a large-scale language model. Keywords related to the responses are extracted, and an advertising auction is held to select the advertisements of the highest bidders, which are then included in a final response message and sent to the user. This allows users to easily obtain high-quality information and display highly relevant advertisements. By providing a system that handles this entire process, the efficiency of information searches and advertisement display can be significantly improved.
[0006] "User" means any person or entity that uses a messaging application to search for information or ask a question.
[0007] "Message" refers to text data such as sentences or questions sent by a user within a message application.
[0008] "Natural language processing means" refers to the process of analyzing messages sent by users, understanding their content, and generating appropriate search queries.
[0009] A "search query" is a statement that uses keywords and phrases from a message to send to a search engine's API.
[0010] A "search engine API" refers to a system that provides a programmatic interface for searching information on the Internet.
[0011] "Search Results" refers to the list of information returned by a search engine's API in response to an input query.
[0012] A "large-scale language model" refers to a model that uses machine learning algorithms to learn from vast amounts of text data and generate natural-sounding language responses.
[0013] "Colloquial responses" refer to answers generated based on search results in natural sentence format suitable for everyday conversation.
[0014] "Keywords" are words or phrases that are particularly important in a message or response.
[0015] An "ad auction" is a method in which multiple advertisers submit bids based on keywords, and the advertisement of the advertiser who submitted the highest bid is selected.
[0016] "High Bidder" means the advertiser who submits the highest bid in an advertising auction.
[0017] "Final Response Message" refers to a message that includes advertising information for the high bidder in a colloquial response. [Brief explanation of the drawings]
[0018] [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
[0019] 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.
[0020] First, the terms used in the following description will be explained.
[0021] 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).
[0022] 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.
[0023] 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.
[0024] 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.
[0025] 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."
[0026] [First embodiment]
[0027] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.
[0028] 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.
[0029] 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).
[0030] 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.
[0031] 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.
[0032] 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.
[0033] 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.
[0034] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0035] 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.
[0036] 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.
[0037] 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.
[0038] 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."
[0039] The present invention is a system that automates the process of searching for information or asking questions through messaging applications and improves the user experience by displaying relevant advertisements.
[0040] System configuration
[0041] The system mainly includes the following elements:
[0042] 1. Message Receiving Unit - Receives messages sent by users.
[0043] 2. Natural Language Processing Unit - Analyzes received messages and extracts important keywords and intent.
[0044] 3. Search query generation section - Generates appropriate search queries based on the extracted keywords and intent.
[0045] 4. Search execution unit - Sends the search query to the search engine's API and retrieves the search results.
[0046] 5. Result analysis section - Analyzes the search results and selects important information.
[0047] 6. Response Generation - Generates natural-sounding responses using a large-scale language model based on the selected information.
[0048] 7. Advertisement Selection Unit - Conducts an ad auction based on keywords related to the response and selects the advertisement with the highest bidder.
[0049] 8. Message sending section - Include the advertisement in the final response message and send it to the user.
[0050] Program processing
[0051] The processing of each part proceeds as follows:
[0052] 1. Message Reception
[0053] A user sends a question or information using a messaging application (e.g., LINE). The device (user's smartphone) receives this message and forwards it to the server.
[0054] 2. Natural Language Processing
[0055] The server analyzes the message it receives with its natural language processor. For example, if a user sends a message asking, "What smartphone do you recommend this year?", the natural language processor will extract keywords such as "this year," "recommended," and "smartphone."
[0056] 3. Generating search queries
[0057] Based on the extracted keywords, the server generates search queries such as "recommended smartphones 2023."
[0058] 4. Perform a search
[0059] The server then sends the generated search query to the API of a search engine (e.g., Google Search), which returns search results that match the query.
[0060] 5. Analysis of search results
[0061] The server receives the search results and selects the top information from them, such as "Smartphone Rankings 2023" or "Recommended Smartphone Models."
[0062] 6. Generating the Response
[0063] Based on the selected information, a large-scale language model (e.g., GPT-4) is used to generate natural, colloquial responses, such as "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6."
[0064] 7. Advertisement Selection
[0065] An ad auction is conducted based on keywords related to the response (in this case, "smartphone" or "iPhone 14"). The server selects the advertiser who made the highest bid and obtains their ad information.
[0066] 8. Sending the final message
[0067] The server then creates a final response message by including the advertising information in the generated response message. For example, the message might read, "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. For more information, click here: [advertising URL]." This is then sent to the user.
[0068] Specific examples
[0069] Consider the case where a user sends a message asking, "What are the popular smartphones these days?" The device sends this message to the server, and the server's natural language processing unit extracts the keywords "recent," "popular," and "smartphone." The search query generation unit creates a query such as "popular smartphones 2023," and the search execution unit sends the query to the search engine API. From the returned search results, information such as "2023 popular smartphone rankings" is converted into a natural response using a large-scale language model. An advertising auction is then conducted based on the related keywords, and the highest-priced advertisement is included in the final message and sent to the user. This series of processes allows the user to quickly obtain useful information and also provides relevant advertisements.
[0070] The processing flow will be explained below.
[0071] Step 1:
[0072] A user sends a question or piece of information using the LINE app. For example, they type a message like "What smartphone do you recommend?" and press the send button.
[0073] Step 2:
[0074] The device sends the user's message to the LINE server, where it encrypts the message and transfers it according to the LINE protocol.
[0075] Step 3:
[0076] The LINE server receives the message and forwards it to the appropriate intermediate server, which then prepares to analyze the message content.
[0077] Step 4:
[0078] The server sends the message to the natural language processing unit, which then analyzes the message. For example, it extracts keywords such as "recommended," "smartphone," and "what."
[0079] Step 5:
[0080] The server generates a search query based on the preprocessed information. Specifically, it creates a search query such as "recommended smartphones 2023" based on the results of the natural language processing unit.
[0081] Step 6:
[0082] The server sends the search query to a search engine API, for example, the Google Search API, and receives the search results from the API.
[0083] Step 7:
[0084] The server receives search results from the search engine API, filters the top search results, and selects the most important information.
[0085] Step 8:
[0086] The server then inputs the selected search results into a large-scale language model to generate natural, colloquial responses, such as "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6."
[0087] Step 9:
[0088] The server then re-analyzes the keywords associated with the response message, extracting advertising keywords such as "smartphone," "iPhone 14," and "Google Pixel 6."
[0089] Step 10:
[0090] The server conducts an advertising auction based on the extracted keywords, evaluates bids from advertisers, and selects the advertiser with the highest bid.
[0091] Step 11:
[0092] The server then incorporates the selected advertising information and URL into the final response message, such as "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. For more information, click here: [advertising URL]."
[0093] Step 12:
[0094] The server sends a final response message to the LINE server, which delivers the message to the user.
[0095] Step 13:
[0096] The device receives the message from the LINE server and displays it on the chat screen. The user sees a message that reads, "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. For more information, click here: [ad URL]."
[0097] Example 1
[0098] 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."
[0099] Conventional search systems and information provision systems have difficulty in quickly providing appropriate information in response to user questions and requests. Furthermore, they lack a means to effectively display relevant advertisements, making it difficult for advertisers to display their advertisements at the optimal time. As a result, there is a demand for a means to improve user satisfaction.
[0100] 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.
[0101] In this invention, the server includes means for receiving a message sent by a user, means for analyzing the message using natural language processing means and extracting important keywords and intent, means for generating an appropriate search query based on the extracted keywords and intent, means for sending the search query to a search engine interface, means for obtaining search results from the interface, means for analyzing the obtained search results, selecting top results, and converting them into a natural language response using a large-scale language model, means for conducting an advertising auction based on keywords related to the response, means for selecting an advertisement from the highest bidder and including it in a final response message, and means for sending the final response message to the user. This allows users to obtain useful information specifically and quickly, and related advertisements are also displayed effectively, thereby improving the user experience.
[0102] "User" means any person or entity that uses the System to search for information or ask a question.
[0103] A "Message" is a text communication sent by a User to ask a question or request information.
[0104] A "server" is a computer system that receives a user's message, analyzes it, and generates a response.
[0105] "Natural language processing means" is a collection of technologies and methods that analyze messages and extract important keywords and intentions.
[0106] "Keywords" are words or phrases that are considered particularly important in a message.
[0107] "Intent" refers to the purpose or question the user is trying to achieve through the message.
[0108] A "search query" is a syntax that represents search criteria sent to a search engine.
[0109] A "search engine interface" is a programmatic boundary through which external systems can send queries to a search engine and receive results.
[0110] A "search result" is a collection of information or data returned by a search engine in response to a search query.
[0111] "Result analysis means" refers to a collection of techniques and methods for analyzing the search results and selecting important information.
[0112] A "large-scale language model" is an artificial intelligence model that learns from massive amounts of text data to generate and understand natural language.
[0113] A "natural language response" is text generated based on acquired and analyzed information to communicate it to the user in an easy-to-understand manner.
[0114] An "ad auction" is a process in which advertisers compete for keywords and determine the placement of their ads based on the highest bid.
[0115] A "high bidder" is an advertiser who bids the highest amount in an advertising auction.
[0116] A "final response message" is a message sent to a user that includes a response message and related advertisements.
[0117] "Transmission means" refers to a collection of technologies and methods for delivering messages generated by the server to users.
[0118] This invention is a system that automates the process of searching for information or asking questions through a messaging application and displays relevant advertisements. The system is implemented by combining multiple software components and hardware resources.
[0119] First, a user opens a messaging application (e.g., a messaging app) on a device such as a smartphone or computer. The user types and sends a message with a question or request for information. The device receives the message and forwards it to the server.
[0120] Next, the server passes the received message to a natural language processing means. This processing is performed using a natural language processing model (for example, a morphological analyzer or semantic analyzer). At this stage, important keywords and the user's intention are extracted from the message. For example, if a user sends a message asking, "What smartphone do you recommend this year?", the server will extract keywords such as "this year," "recommended," and "smartphone."
[0121] Based on the extracted keywords, the server calls the search query generator to generate an appropriate search query. The search query is based on the user's intent and is generated in the form of "recommended smartphones 2023." This query is then sent to the search engine interface, for example, to the search engine API (search engine program interface). The API provides search results that match the query.
[0122] The server receives search results from the search engine API and analyzes them using a result analysis method. The top results are selected, such as "Smartphone Rankings 2023" or "Recommended Smartphone Models." The selected information is then passed to a response generator, which uses a large-scale language model (e.g., GPT-4) to generate a natural, colloquial response. For example, a response such as "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6" is generated.
[0123] After generating the response, the server conducts an ad auction using keywords related to the response. The advertiser with the highest bid based on the keywords included in the response (e.g., "smartphone" or "iPhone 14") is selected. The selected advertiser's ad is included in the final response message. The final message might look something like this: "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. Learn more: [ad URL]."
[0124] The final response message will be sent from the server to the user's device and displayed to the user. This system allows users to obtain quick and useful information and also displays relevant advertisements, improving the user experience.
[0125] Specific examples
[0126] Consider the case where a user sends a message asking, "What are the popular smartphones these days?" The device sends this message to the server, and the server's natural language processing unit extracts the keywords "recent," "popular," and "smartphone." The search query generation unit creates a query such as "popular smartphones 2023," and the search execution unit sends the query to the search engine API. From the returned search results, information such as "2023 popular smartphone rankings" is converted into a natural response using a large-scale language model. An advertising auction is then conducted based on the related keywords, and the highest-priced advertisement is included in the final message and sent to the user.
[0127] Prompt Sentence Examples
[0128] Please tell me about the latest popular smartphones.
[0129] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0130] Step 1:
[0131] A user opens a messaging application and types a message, such as a question or a request for information. The user taps the send button, and the device receives the message. The device then forwards this message to a server. The input is the text message typed by the user, and the output is the message data sent to the server.
[0132] Step 2:
[0133] The server passes the received message to the natural language processor, which analyzes the message and extracts important keywords and intent. For example, the keywords "recent," "popular," and "smartphone" are extracted from the message "What are the popular smartphones these days?" The input is the received message text, and the output is a list of extracted keywords.
[0134] Step 3:
[0135] Based on the extracted keywords, the server calls the search query generator to generate an appropriate search query. The generated search query will be in the format of "Popular smartphones 2023." The input is a list of extracted keywords, and the output is the generated search query.
[0136] Step 4:
[0137] The server sends the generated search query to a search engine interface, for example, the search query is sent as an HTTP request to a search engine API. The input is the generated search query, and the output is the search result data from the search engine API.
[0138] Step 5:
[0139] The server receives the search results and passes them to the result analysis unit. The result analysis unit analyzes the search results and selects the top results. For example, information such as "Popular smartphone rankings for 2023" or "Recommended smartphone models" is selected. The input is the search result data, and the output is a list of the selected information.
[0140] Step 6:
[0141] The server passes the selected information to the response generator, which uses a large-scale language model (e.g., GPT-4) to generate a natural, colloquial response based on the selected information. For example, it generates a response such as, "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6." The input is a list of selected information, and the output is the generated response message.
[0142] Step 7:
[0143] The server conducts an advertising auction using keywords related to the content of the generated response message. The advertiser who submitted the highest bid based on the keywords included in the response (e.g., "smartphone" or "iPhone 14") is selected. The input is the keywords related to the generated response message, and the output is the selected advertising information.
[0144] Step 8:
[0145] The server generates a final response message that includes the selected advertising information. For example, it creates a message in the format "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. For more information, click here: [advertising URL]." The input is the generated response message and advertising information, and the output is the final message. The server sends this final message to the user's device, which receives it and displays it to the user.
[0146] (Application example 1)
[0147] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0148] In conventional messaging applications, users had to perform many manual operations when searching for information, and search results were only displayed directly, without effectively delivering relevant advertisements. Furthermore, the accuracy of natural language understanding was low, making it difficult to accurately grasp user intent. This resulted in a poor user experience and insufficient advertising effectiveness.
[0149] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[0150] In this invention, the server includes means for receiving a message sent by a user, means for analyzing the message using natural language processing means and generating a search query, means for sending the search query to an API of a search engine, means for obtaining search results from the API, means for analyzing the obtained search results and converting top results into colloquial responses using a large-scale language model, means for extracting keywords related to the responses and conducting an advertisement auction, means for selecting an advertisement from a high bidder and including it in a final response message, means for sending the final response message to the user, and means for providing the generated response message and advertisement together to the user. This enables users to not only efficiently search for information but also simultaneously receive highly relevant advertisements.
[0151] "User" means any person or entity that uses the System to search for information and receive response messages.
[0152] "Message" refers to the text or voice data that a user enters and sends to the system to search for information.
[0153] "Natural language processing means" refers to technology that analyzes messages sent by users and extracts important keywords and the user's intentions.
[0154] A "search query" refers to a search phrase or sentence generated based on keywords and intent extracted by natural language processing means.
[0155] "Search Engine API" means an application programming interface that provides an interface for submitting search queries to and retrieving results from an external search engine.
[0156] "Search results" refers to a list of information obtained from a search engine's API.
[0157] A "large-scale language model" is a model that uses machine learning algorithms generated by learning from massive amounts of text data, and is used to convert search results into natural, colloquial language.
[0158] An "ad auction" refers to the process by which advertisers bid based on keywords related to search results or responses, and the highest bidder's ad is selected.
[0159] "Final Response Message" means a message that includes a response message generated based on the search results and a selected advertisement.
[0160] The "means for providing the generated response message and advertisement to the user together" refers to a technology for transmitting the response message and the related advertisement to the user as a single message.
[0161] This invention is a system that automates the process of searching for information through a messaging application and displays relevant advertisements. This system consists of the following components:
[0162] First, the user sends a message from a device (e.g., a smartphone). The server receives this message and moves on to the next process.
[0163] The server analyzes the received message using natural language processing means. This natural language processing means includes software that analyzes text and voice. For example, the natural language processing library Transformers provided by Hugging Face can be used. In this example, if a user sends a message saying, "What is the most popular smartphone right now?", the natural language processing means will extract keywords such as "most popular right now" and "smartphone."
[0164] The server then generates a search query based on these keywords, such as "popular smartphones," and sends the generated search query to a search engine's API, which could be the Google Search API or another generic search engine API.
[0165] The server receives search results from the search engine's API, analyzes them, and selects the top results that are most relevant to the user's information needs.
[0166] The server then converts these top search results into natural-sounding responses using a large-scale language model, which can employ machine learning algorithms like OpenAI's GPT-4. For example, it might generate a response like, "The most popular smartphones right now are the iPhone 14 and the Google Pixel 6, and by 2023, they will be popular."
[0167] The server then extracts keywords related to the response and proceeds to conduct an ad auction. The auction selects the ad from the highest bidder and includes it in the response. For example, the message might read, "Currently, the most popular smartphones are the iPhone 14 and Google Pixel 6, and by 2023, they will be popular. Learn more here: [ad URL]."
[0168] Finally, the server sends this final response message to the user's device, allowing the user to quickly obtain the desired information and receive related advertisements at the same time.
[0169] For illustrative purposes, consider the following prompt:
[0170] What is the most popular smartphone right now?
[0171] "What are your recommended summer travel destinations?"
[0172] "I want to know more about the latest tablets."
[0173] The above is an embodiment of the invention, which allows users to efficiently search for the information they are looking for and display relevant advertisements, and also enables advertisers to carry out effective marketing.
[0174] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0175] Step 1:
[0176] The user uses the device to send a message to search for information through a messaging application, for example, by typing "Tell me about the latest smartphones."
[0177] Step 2:
[0178] The server receives a message sent from the terminal. This message is passed to the server as text data. The input here is the message sent by the user, and the output is the message content.
[0179] Step 3:
[0180] The server analyzes the received message using natural language processing. Specifically, it uses Hugging Face's Transformers library to analyze the meaning of the message and extract important keywords. The input is the text message, and the output is the extracted keywords. For example, keywords such as "latest" and "smartphone" are extracted.
[0181] Step 4:
[0182] The server generates a search query based on the extracted keywords. The generated search query is converted into a format that can be used as an API request for the search engine. The input is the extracted keywords, and the output is the search query. For example, the format might be "latest smartphone."
[0183] Step 5:
[0184] The server sends the generated search query to a search engine's API, for example using the Google Search API. The input is the search query and the output is the search results returned by the API.
[0185] Step 6:
[0186] The server receives search results obtained from a search engine's API. The received search results include multiple links and summary information. The input is the search results returned by the API, and the output is a list of these search results.
[0187] Step 7:
[0188] The server analyzes the received search results and selects the top relevant results, taking into account metadata such as search ranking and click-through rate. The input is a list of search results, and the output is the selected top results.
[0189] Step 8:
[0190] The server converts the selected search results into natural, colloquial responses using a large-scale language model (e.g., OpenAI's GPT-4). The input is the selected search results, and the output is a response message written in natural language. For example, a response such as "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6" is generated.
[0191] Step 9:
[0192] The server again extracts keywords associated with the response message and conducts an ad auction. It selects the advertisement of the highest bidder and includes it in the response message. The input is the keywords associated with the response message, and the output is the advertisement to be included in the final response message.
[0193] Step 10:
[0194] The server sends the generated response message and the selected advertisement as a single message to the user's device. The input is the final response message and advertisement, and the output is the final message sent to the user's device. For example, it might say, "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. For more information, click here: [Advertisement URL]."
[0195] The above are the specific processing steps for carrying out the present invention, which allow users to quickly obtain effective information and simultaneously provide relevant advertisements.
[0196] 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.
[0197] This system automates the process of searching for information or asking questions through messaging applications and improves the user experience by displaying relevant advertisements. By combining it with an emotion engine, the system recognizes the user's emotions and provides appropriate responses and advertisements based on those emotions.
[0198] System configuration
[0199] The system mainly includes the following elements:
[0200] 1. Message Receiving Unit - Receives messages sent by users.
[0201] 2. Natural Language Processing Unit - Analyzes received messages and extracts important keywords and intent.
[0202] 3. Emotion Recognition Unit - Equipped with an emotion engine that recognizes the user's emotions from the received message.
[0203] 4. Search query generation - Generates appropriate search queries based on extracted keywords, intent, and recognized sentiment.
[0204] 5. Search execution unit - Sends the search query to the search engine's API and retrieves the search results.
[0205] 6. Result analysis section - Analyzes the search results and selects important information.
[0206] 7. Response Generation - Generates natural-sounding, colloquial responses based on selected information using a large-scale language model, adjusting the tone and style of the response based on the perceived sentiment.
[0207] 8. Advertisement Selection Unit - Conducts an ad auction based on keywords related to the response and selects the advertisement with the highest bidder.
[0208] 9. Message sending section - Include the advertisement in the final response message and send it to the user.
[0209] Program processing
[0210] The processing of each part proceeds as follows:
[0211] 1. Message Reception
[0212] A user sends a question or information using a messaging application (e.g., LINE). The device (user's smartphone) receives this message and forwards it to the server.
[0213] 2. Natural Language Processing
[0214] The server analyzes the received message using a natural language processor. For example, if the message is "What smartphone do you recommend?", the system will extract keywords such as "recommended" and "smartphone."
[0215] 3. Emotion recognition
[0216] The server sends the message to the emotion recognition unit, and the emotion engine analyzes the user's emotion from the message, for example, determining whether the user is angry or depressed.
[0217] 4. Generating Search Queries
[0218] Based on the extracted keywords and the recognized emotions, the server generates search queries such as "recommended smartphones 2023" and adjusts the query depending on the emotions.
[0219] 5. Perform a search
[0220] The server sends the generated search query to a search engine's API, for example, the Google Search API, and receives search results from the API.
[0221] 6. Analysis of search results
[0222] The server receives search results from the search engine API, filters the top search results, and selects the most important information.
[0223] 7. Generating the Response
[0224] Based on the selected information, a large-scale language model (e.g., GPT-4) is used to generate natural-spoken responses. The tone and style of the response are adjusted based on emotion recognition results. For example, if the user is angry, a calm and polite tone is used.
[0225] 8. Advertisement Selection
[0226] An ad auction is conducted based on keywords related to the response (in this case, "smartphone" or "iPhone 14"). The server selects the advertiser who made the highest bid and obtains their ad information.
[0227] 9. Sending the final message
[0228] The server then creates a final response message by including the advertising information in the generated response message. For example, it might say, "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. For more information, click here: [advertising URL]." This is then sent to the user.
[0229] Specific examples
[0230] Consider the case where a user sends a message asking, "What are the popular smartphones these days?" The device sends this message to the server, where the server's natural language processing unit extracts keywords such as "recent," "popular," and "smartphone." At the same time, the emotion recognition unit analyzes the user's emotions and determines, for example, that the user is expressing "interest." The search query generation unit creates a query such as "popular smartphones 2023," and the search execution unit sends the query to the search engine API. From the returned search results, information such as "2023 popular smartphone rankings" is converted into a natural-sounding response using a large-scale language model. An advertising auction is then conducted based on related keywords, and the highest-priced advertisement is included in the final message and sent to the user. This series of processes allows the user to quickly obtain useful information and also provides relevant advertisements.
[0231] The processing flow will be explained below.
[0232] Step 1:
[0233] A user uses the LINE app to send a question or piece of information. For example, they type a message like "What are the most popular smartphones these days?" and press the send button.
[0234] Step 2:
[0235] The device sends the user's message to the LINE server, where it encrypts the message and transfers it according to the LINE protocol.
[0236] Step 3:
[0237] The LINE server receives the message and forwards it to the appropriate intermediate server, which then prepares to analyze the message content.
[0238] Step 4:
[0239] The server sends the message to the natural language processing unit, which then analyzes the message. For example, it extracts keywords such as "recommended" and "smartphone."
[0240] Step 5:
[0241] The server sends the message to the emotion recognition unit, and the emotion engine analyzes the user's emotion from the message. For example, the emotion engine recognizes emotions such as "interest" or "joy" from the user's context.
[0242] Step 6:
[0243] The server generates a search query based on the preprocessed information and the emotion recognition results. For example, if it recognizes that the user is expressing "interest," it generates the search query "Recommended popular smartphones 2023."
[0244] Step 7:
[0245] The server generates a search query and sends it to a search engine API. In this example, the query is sent to the Google Search API, and search results are received from the API.
[0246] Step 8:
[0247] The server receives search results from the search engine API. It filters the top search results and selects important information, such as "Recommended Smartphones for 2023."
[0248] Step 9:
[0249] The server then inputs the selected search results into a large-scale language model to generate natural, colloquial responses, such as "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6."
[0250] Step 10:
[0251] The server then re-analyzes the keywords associated with the response message to extract key keywords, such as "smartphone," "iPhone 14," and "Google Pixel 6."
[0252] Step 11:
[0253] The server conducts an advertising auction based on the extracted keywords, evaluates bids from advertisers, and selects the advertiser with the highest bid.
[0254] Step 12:
[0255] The server then incorporates the selected advertising information and URL into the final response message, such as "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. For more information, click here: [advertising URL]."
[0256] Step 13:
[0257] The server sends a final response message to the LINE server, which delivers the message to the user.
[0258] Step 14:
[0259] The device receives the message from the LINE server and displays it on the chat screen. The user sees a message that reads, "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. For more information, click here: [ad URL]."
[0260] Example 2
[0261] 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."
[0262] When users of messaging applications search for information or ask questions, they need to automate the process and provide relevant information and advertisements quickly and accurately. They also need to create responses that reflect the user's emotional state to improve the user experience.
[0263] 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.
[0264] In this invention, the server includes: means for receiving a message sent by a user; means for analyzing the message using natural language processing means and generating an inquiry query; means for recognizing emotions from the message; means for generating a search query based on the inquiry query and the emotion recognition results; means for sending the search query to an API of an information search engine; means for obtaining search results from the API; means for analyzing the obtained search results and converting the top results into natural responses using a large-scale language model; means for extracting keywords related to the response; means for conducting an advertising auction; means for selecting the advertisement of the highest bidder and including it in a final response message; and means for sending the final response message to the user. This allows users to receive information and advertisements quickly and with high relevance. Furthermore, appropriate responses can be provided according to the user's emotions, improving the user experience.
[0265] The "means for receiving messages sent by a user" refers to a device or system that has the function of receiving messages sent by a user through a message application and transferring the messages to a server.
[0266] "Natural language processing means" refers to a means for analyzing text data and extracting important keywords and intent, and involves processing including morphological analysis and semantic analysis.
[0267] The "means for recognizing emotions" is a technology that has the function of analyzing the user's emotions from the received message and determines the user's emotional state (for example, interest, joy, anger, etc.).
[0268] The "means for generating a search query" refers to a device or system that has the function of creating an appropriate search query based on the extracted keywords and the recognized sentiment.
[0269] "Means for sending to the API of the information search engine" refers to a device or system that has the function of sending a request to the API of the information search engine using the generated search query and obtaining search results.
[0270] "Means for obtaining search results" refers to a device or system that has the function of receiving search results returned from the API of an information search engine and obtaining the necessary data.
[0271] "Means for analyzing search results" refers to the technology for analyzing the search results obtained, selecting the top results, and extracting the necessary information.
[0272] A "large-scale language model" is a model that uses machine learning algorithms to learn from large amounts of text data and generate text that sounds natural and human-like.
[0273] The "means for converting into a natural response" refers to a device or system that has the function of generating a response in natural language that is easy for the user to understand, based on the analyzed search results.
[0274] The "means for conducting an advertisement auction" is a technique for conducting an advertisement auction based on keywords related to the generated response message and selecting the advertisement of the highest bidder.
[0275] The "means for selecting the advertisement of the highest bidder" refers to a device or system that has the function of selecting the advertisement of the advertiser who made the highest bid based on the results of the advertising auction and acquiring information about it.
[0276] The "means for transmitting a final response message to a user" refers to a device or system having a function for including an advertisement in the generated response message and transmitting it to the user as a final message.
[0277] The present invention provides a system for automating the process of searching for information or asking a question through a messaging application, and providing highly relevant information and advertisements. Specific embodiments of the system are described below.
[0278] Hardware and software used
[0279] The system uses the following hardware and software:
[0280] Device: A device that runs a messaging application, such as a user's smartphone or tablet.
[0281] Server: A computer system that receives messages, processes natural language, recognizes emotions, generates search queries, communicates with information search engine APIs, analyzes search results, generates responses, selects advertisements, and finally sends messages.
[0282] Natural language processing software: For morphological and semantic analysis of text data, we use, for example, spaCy, a Python NLP software.
[0283] Emotion recognition engine: To analyze the user's emotions, for example, use the Emotion API from Microsoft Azure's Cognitive Services.
[0284] Information Search Engine APIs: Search for information using search engine APIs such as the Google Custom Search API.
[0285] Large-scale language models: Models using machine learning algorithms, such as GPT-4.
[0286] Advertising auction system: A system for conducting advertising auctions using the Google Ads API, etc.
[0287] System Operation
[0288] Message Reception
[0289] A user uses a messaging application (e.g., LINE) to send a message such as, "What are the most popular smartphones these days?" The device receives this message and forwards it to the server. At this time, the device sends the message data to the server via the Internet.
[0290] Natural Language Processing
[0291] The server analyzes the received messages using natural language processing to extract important keywords such as "recent," "popular," and "smartphone." Specifically, it uses spaCy, a Python NLP software, to perform morphological analysis.
[0292] emotion recognition
[0293] The server sends the message to an emotion recognition unit and analyzes the user's emotions. For example, it uses the Emotion API from Microsoft Azure's Cognitive Services, an API dedicated to emotion analysis, to determine whether the message shows interest.
[0294] Generating a search query
[0295] The server generates a search query based on the extracted keywords and the emotion recognition results. The generated query will be in the form of "Popular smartphones 2023." If the emotion recognition result is "interest," the query will be adjusted to "Recommended popular smartphones 2023."
[0296] Performing a Search
[0297] The server sends the generated search query to the Google Search API to retrieve search results. Specifically, it sends the query to the Google Custom Search API using an HTTP request.
[0298] Parsing search results
[0299] The server receives search results from the Google Search API and filters the top results to select the most important information, using HTML parsing tools such as BeautifulSoup.
[0300] Generating a response
[0301] Based on the selected information, the server uses a large-scale language model (e.g., GPT-4) to generate a natural, colloquial response, such as, "Popular smartphones in 2023 are the iPhone 14 and Google Pixel 6."
[0302] Ad selection
[0303] The server will then use keywords related to the response message to conduct an ad auction, such as "smartphone" or "iPhone 14," using the Google Ads API to select the highest bidder's ad.
[0304] Sending the final message
[0305] The server combines the generated response message with the advertising information to create a final message, which is then sent to the device and presented to the user. For example, a message such as "Popular smartphones in 2023 will be the iPhone 14 and Google Pixel 6. For more information, click here: [advertising URL]" could be sent to the device.
[0306] Specific examples
[0307] If a user sends a message asking "What are the most popular smartphones these days?", the following happens:
[0308] 1. The device forwards the message to the server.
[0309] 2. The server analyzes the message and extracts the keywords "recent," "popular," and "smartphone."
[0310] 3. The server uses an emotion engine to analyze whether the person is showing "interest."
[0311] 4. The server generates the search query "popular smartphones 2023."
[0312] 5. The server sends a query to the Google Search API and retrieves the search results.
[0313] 6. The server selects important information and extracts key smartphone information.
[0314] 7. The server uses GPT-4 to generate a response such as, "Popular smartphones in 2023 will be the iPhone 14 and Google Pixel 6."
[0315] 8. The server conducts an advertising auction for "smartphones" and selects the advertisement from the highest bidder.
[0316] 9. The server sends the final message to the device, which then displays the message to the user: "Popular smartphones in 2023 will be the iPhone 14 and Google Pixel 6. Learn more: [ad URL]."
[0317] Example prompts for generative AI models
[0318] "Write a code that uses emotion recognition to determine that a user is interested in the question 'What are the popular smartphones these days?' and then uses the Google Search API to provide a ranking of the most popular smartphones for 2023."
[0319] This prompt can be used as input for a generative AI model to generate accurate code and explanations.
[0320] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0321] Step 1: Receiving a message
[0322] A user sends a message using a messaging application asking, "What are the popular smartphones these days?"
[0323] Input: User message: "What are the popular smartphones these days?"
[0324] The terminal receives this message and forwards it to a server over the Internet.
[0325] Output: Message data transferred to the server
[0326] Step 2: Natural Language Processing
[0327] The server analyzes the received message using natural language processing means.
[0328] Input: Message data transferred to the server
[0329] Specifically, morphological analysis is performed using spaCy, a Python NLP software, to extract important keywords such as "recent," "popular," and "smartphone."
[0330] Output: Extracted keywords "recent", "popular", "smartphone"
[0331] Step 3: Emotion Recognition
[0332] The server sends the message to the emotion engine, which analyzes the user's emotions.
[0333] Input: Message data transferred to the server
[0334] For example, the Emotion API of Microsoft Azure's Cognitive Services can be used to determine whether the message content shows interest.
[0335] Output: Determined emotion "interest"
[0336] Step 4: Generating a search query
[0337] The server generates a search query based on the extracted keywords and emotion recognition results.
[0338] Input: Extracted keywords "recent", "popular", "smartphone", determined emotion "interest"
[0339] The generated query will be "Popular smartphones 2023." If the emotion recognition result is "interest," the query will be adjusted to "Popular smartphone recommendations 2023."
[0340] Output: Generated search query "Popular smartphone recommendations 2023"
[0341] Step 5: Perform a search
[0342] The server generates a search query and sends it to an information search engine API to retrieve search results.
[0343] Input: Generated search query "Popular smartphone recommendations 2023"
[0344] Specifically, an HTTP request is used to send a query to an information search engine's API (e.g., Google Custom Search API).
[0345] Output: Search results returned from the search engine API
[0346] Step 6: Parse the search results
[0347] The server receives and analyzes search results obtained from the search engine API.
[0348] Input: Search results returned from the search engine API
[0349] Use an HTML parsing tool like BeautifulSoup to filter the top search results and select the important information.
[0350] Output: Selected important information
[0351] Step 7: Generate a response
[0352] The server uses a large-scale language model to generate natural responses based on the selected information.
[0353] Input: Selected important information
[0354] Here, GPT-4 is used to generate natural, colloquial responses such as, "Popular smartphones in 2023 will be the iPhone 14 and Google Pixel 6."
[0355] Output: A natural response message is generated.
[0356] Step 8: Ad selection
[0357] The server conducts an advertisement auction using keywords associated with the response message.
[0358] Input: Keywords related to the generated natural response message, such as "smartphone" or "iPhone 14"
[0359] For example, use the Google Ads API to select ads from the highest bidders.
[0360] Output: Selected advertising information
[0361] Step 9: Sending the final message
[0362] The server generates a response message and combines it with the advertising information to create a final message.
[0363] Input: Generated natural response message, selected advertising information
[0364] This is sent to the device and presented to the user. For example, a message such as "Popular smartphones in 2023 will be the iPhone 14 and Google Pixel 6. For more information, click here: [advertising URL]" is sent to the device.
[0365] Output: The final message presented to the user
[0366] (Application example 2)
[0367] 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."
[0368] In traditional food delivery systems, users have to spend a lot of time searching for the right menu or restaurant, and the system does not provide suggestions or responses that take into account the user's emotions and moods. Furthermore, relevant advertisements do not necessarily match the user's interests and needs, which does not improve the user experience. This leads to dissatisfaction for users.
[0369] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[0370] In this invention, the server includes means for receiving a message sent by a user, means for analyzing the message using natural language processing means and generating a search query, means for recognizing emotions from the message, means for sending the search query to a search engine API, means for obtaining search results from the API, means for analyzing the obtained search results and converting top results into colloquial responses using a large-scale language model, means for adjusting the tone and style of the response based on the emotions, means for extracting keywords related to the response and conducting an advertising auction, means for selecting an advertisement from the highest bidder and including it in a final response message, and means for sending the final response message to the user. This enables the presentation of flexible and personalized responses and related advertisements that take into account the user's emotions.
[0371] "User" refers to a person who uses the food delivery system.
[0372] "Message" means a text-based communication sent by a User to the System.
[0373] "Natural language processing" refers to the technology of analyzing messages and extracting keywords and intent.
[0374] "Search query" means a string of characters generated to specify an information request to a search engine.
[0375] "Emotion recognition" refers to the process of analyzing and recognizing a user's emotional state from a message.
[0376] "Search Engine API" refers to an application program interface used for external information searches.
[0377] "Search Results" refers to the information returned by a search engine based on a search query.
[0378] A "large-scale language model" refers to a natural language processing model that is trained using a very large amount of text data.
[0379] "Adjusting tone and style" refers to the process of changing the way a response is phrased based on the user's feelings.
[0380] An "ad auction" refers to the process in which multiple advertisers compete to acquire advertising space.
[0381] "Final response message" refers to a message containing the response result and related advertisements that the system provides to the user.
[0382] This invention is designed to automatically provide personalized suggestions and advertisements based on user sentiment in a specific food delivery system. The system consists of the following components:
[0383] Specific system configuration
[0384] 1. User message receiving section
[0385] A user sends a message to the system using their own device (e.g., a smartphone). This message is received by the server. For example, suppose a user asks, "Do you have any lunch recommendations?"
[0386] 2. Natural Language Processing Unit
[0387] The received message is analyzed. Natural language processing technology is used to extract important keywords and phrases. For example, keywords such as "recommended" and "lunch" are analyzed to grasp the main points. Hugging Face's natural language processing model (e.g., GPT-4) is used here.
[0388] 3. Emotion recognition section
[0389] The system recognizes the user's emotions from the content of the message. Using an emotion recognition API, it analyzes the user's emotions, such as whether they are feeling stressed or happy. For example, if a user sends a message saying, "I've been feeling stressed lately," the system analyzes their emotional state.
[0390] 4. Search query generation and search execution
[0391] Based on the extracted keywords and the recognized sentiment, a search query is generated, such as "recommended lunch to relieve stress," and sent to the search engine's API, through which related information is retrieved.
[0392] 5. Result Analysis and Response Generation
[0393] The search results are received and converted into a colloquial response using a large-scale language model. Based on the information obtained, a response message is generated in a tone and style that reflects the emotion. For example, a response could be constructed in the form of "An acai bowl is a recommended lunch that will help relieve stress."
[0394] 6. Advertising Selection Department
[0395] Keywords related to the response are extracted and an ad auction is held. The ad from the highest bidder is selected and included in the final response message. For example, a message containing "Advertisement for Specialty Acai Bowls" is generated.
[0396] 7. Message sending part
[0397] A final response message is sent to the user, which contains a personalized answer to the user's question along with a relevant advertisement.
[0398] Hardware and software used
[0399] Server: Runs on a high-performance cloud service (e.g., AWS, Google Cloud Platform).
[0400] Natural language processing models: Use large-scale language models such as Hugging Face's "GPT-4."
[0401] Emotion Recognition API: Use emotion management services such as the Emotion Recognition API.
[0402] Search Engine API: Using Google Search API as an example.
[0403] Advertising API: Use a dedicated advertising API to conduct ad auctions.
[0404] Examples of specific examples and prompts
[0405] Examples:
[0406] Suppose a user sends a message saying, "I've been feeling stressed lately. Do you have any lunch recommendations?" The server receives this message, and the natural language processing unit extracts "recommended" and "lunch" as keywords. The emotion recognition unit recognizes the sense of stress and generates the search query "recommended lunch stress relief." Information from the search results, such as "acai bowl," is converted into a colloquial response using a large-scale language model. The advertisement selection unit adds the related "ad for special acai bowls," generates a final response message, and sends it to the user.
[0407] Example prompt sentence:
[0408] When a user asks, "I've been feeling stressed lately, do you have any lunch recommendations?" generate a response with relaxing food suggestions and relevant ads.
[0409] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0410] Step 1:
[0411] The server receives the message sent by the user.
[0412] Input: A message sent by the user from their device (e.g., "Do you have any lunch recommendations?").
[0413] Processing: The message receiver receives the message and passes the data to the next process.
[0414] Output: The received user message (text data) is obtained as output.
[0415] Step 2:
[0416] The server analyzes the received message using a natural language processor.
[0417] Input: The user message received in step 1.
[0418] Processing: Using natural language processing techniques (e.g., GPT-4), we extract important keywords and phrases from the message. In this example, we analyze keywords such as "recommendation" and "lunch."
[0419] Output: The extracted keywords and phrases are obtained as output.
[0420] Step 3:
[0421] The server recognizes the emotion from the message.
[0422] Input: The user message received in step 1.
[0423] Processing: Using emotion recognition API, analyze the user's emotion from the message. For example, recognize the emotional state of the user, such as "the user is feeling stressed."
[0424] Output: The recognized emotion information is obtained as the output.
[0425] Step 4:
[0426] The server generates a search query based on the extracted keywords and the recognized sentiment and sends it to the search engine's API.
[0427] Input: Keywords extracted in step 2 ("recommended", "lunch") and emotion information recognized in step 3 ("stress").
[0428] Processing: Generate a search query such as "recommended lunches to relieve stress" and send it to the search engine's API.
[0429] Output: The output is the search query sent to the search API.
[0430] Step 5:
[0431] The server retrieves search results from the search engine's API.
[0432] Input: The search query generated in step 4.
[0433] Process: Receive search results returned by the search engine API.
[0434] Output: The search result data is obtained as output.
[0435] Step 6:
[0436] The server analyzes the search results and converts them into colloquial responses using a large-scale language model.
[0437] Input: Search result data obtained in step 5.
[0438] Processing: Using a large-scale language model (such as GPT-4), we select important information from the search results and generate a colloquial response message that is easy for the user to understand. We adjust the tone and style of the response based on emotion recognition results.
[0439] Output: The output is the generated colloquial response message.
[0440] Step 7:
[0441] The server extracts keywords associated with the responses and conducts an advertisement auction.
[0442] Input: The relevant keywords for the response message generated in step 6.
[0443] Processing: Based on the extracted keywords (e.g., "lunch" or "acai bowl"), an ad auction is conducted using the advertising API, and the ad of the advertiser who made the highest bid is selected.
[0444] Output: The selected advertising data is obtained as output.
[0445] Step 8:
[0446] The server generates a final response message and sends it to the user.
[0447] Input: The response message generated in step 6 and the advertising data selected in step 7.
[0448] Processing: The response message includes the advertisement and is sent securely and quickly to the user's device. For example, it may contain something like, "Our recommended lunch for stress relief is an acai bowl. For more information on our specialty acai bowls, click here: [ad URL]."
[0449] Output: The output is the final response message sent to the user.
[0450] 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.
[0451] 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.
[0452] 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.
[0453] [Second embodiment]
[0454] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0455] 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.
[0456] 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).
[0457] 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.
[0458] 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.
[0459] 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).
[0460] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[0461] 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.
[0462] 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.
[0463] 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.
[0464] 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.
[0465] 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."
[0466] The present invention is a system that automates the process of searching for information or asking questions through messaging applications and improves the user experience by displaying relevant advertisements.
[0467] System configuration
[0468] The system mainly includes the following elements:
[0469] 1. Message Receiving Unit - Receives messages sent by users.
[0470] 2. Natural Language Processing Unit - Analyzes received messages and extracts important keywords and intent.
[0471] 3. Search query generation section - Generates appropriate search queries based on the extracted keywords and intent.
[0472] 4. Search execution unit - Sends the search query to the search engine's API and retrieves the search results.
[0473] 5. Result analysis section - Analyzes the search results and selects important information.
[0474] 6. Response Generation - Generates natural-sounding responses using a large-scale language model based on the selected information.
[0475] 7. Advertisement Selection Unit - Conducts an ad auction based on keywords related to the response and selects the advertisement with the highest bidder.
[0476] 8. Message sending section - Include the advertisement in the final response message and send it to the user.
[0477] Program processing
[0478] The processing of each part proceeds as follows:
[0479] 1. Message Reception
[0480] A user sends a question or information using a messaging application (e.g., LINE). The device (user's smartphone) receives this message and forwards it to the server.
[0481] 2. Natural Language Processing
[0482] The server analyzes the message it receives with its natural language processor. For example, if a user sends a message asking, "What smartphone do you recommend this year?", the natural language processor will extract keywords such as "this year," "recommended," and "smartphone."
[0483] 3. Generating search queries
[0484] Based on the extracted keywords, the server generates search queries such as "recommended smartphones 2023."
[0485] 4. Perform a search
[0486] The server then sends the generated search query to the API of a search engine (e.g., Google Search), which returns search results that match the query.
[0487] 5. Analysis of search results
[0488] The server receives the search results and selects the top information from them, such as "Smartphone Rankings 2023" or "Recommended Smartphone Models."
[0489] 6. Generating the Response
[0490] Based on the selected information, a large-scale language model (e.g., GPT-4) is used to generate natural, colloquial responses, such as "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6."
[0491] 7. Advertisement Selection
[0492] An ad auction is conducted based on keywords related to the response (in this case, "smartphone" or "iPhone 14"). The server selects the advertiser who made the highest bid and obtains their ad information.
[0493] 8. Sending the final message
[0494] The server then creates a final response message by including the advertising information in the generated response message. For example, the message might read, "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. For more information, click here: [advertising URL]." This is then sent to the user.
[0495] Specific examples
[0496] Consider the case where a user sends a message asking, "What are the popular smartphones these days?" The device sends this message to the server, and the server's natural language processing unit extracts the keywords "recent," "popular," and "smartphone." The search query generation unit creates a query such as "popular smartphones 2023," and the search execution unit sends the query to the search engine API. From the returned search results, information such as "2023 popular smartphone rankings" is converted into a natural response using a large-scale language model. An advertising auction is then conducted based on the related keywords, and the highest-priced advertisement is included in the final message and sent to the user. This series of processes allows the user to quickly obtain useful information and also provides relevant advertisements.
[0497] The processing flow will be explained below.
[0498] Step 1:
[0499] A user sends a question or piece of information using the LINE app. For example, they type a message like "What smartphone do you recommend?" and press the send button.
[0500] Step 2:
[0501] The device sends the user's message to the LINE server, where it encrypts the message and transfers it according to the LINE protocol.
[0502] Step 3:
[0503] The LINE server receives the message and forwards it to the appropriate intermediate server, which then prepares to analyze the message content.
[0504] Step 4:
[0505] The server sends the message to the natural language processing unit, which then analyzes the message. For example, it extracts keywords such as "recommended," "smartphone," and "what."
[0506] Step 5:
[0507] The server generates a search query based on the preprocessed information. Specifically, it creates a search query such as "recommended smartphones 2023" based on the results of the natural language processing unit.
[0508] Step 6:
[0509] The server sends the search query to a search engine API, for example, the Google Search API, and receives the search results from the API.
[0510] Step 7:
[0511] The server receives search results from the search engine API, filters the top search results, and selects the most important information.
[0512] Step 8:
[0513] The server then inputs the selected search results into a large-scale language model to generate natural, colloquial responses, such as "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6."
[0514] Step 9:
[0515] The server then re-analyzes the keywords associated with the response message, extracting advertising keywords such as "smartphone," "iPhone 14," and "Google Pixel 6."
[0516] Step 10:
[0517] The server conducts an advertising auction based on the extracted keywords, evaluates bids from advertisers, and selects the advertiser with the highest bid.
[0518] Step 11:
[0519] The server then incorporates the selected advertising information and URL into the final response message, such as "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. For more information, click here: [advertising URL]."
[0520] Step 12:
[0521] The server sends a final response message to the LINE server, which delivers the message to the user.
[0522] Step 13:
[0523] The device receives the message from the LINE server and displays it on the chat screen. The user sees a message that reads, "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. For more information, click here: [ad URL]."
[0524] Example 1
[0525] 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."
[0526] Conventional search systems and information provision systems have difficulty in quickly providing appropriate information in response to user questions and requests. Furthermore, they lack a means to effectively display relevant advertisements, making it difficult for advertisers to display their advertisements at the optimal time. As a result, there is a demand for a means to improve user satisfaction.
[0527] 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.
[0528] In this invention, the server includes means for receiving a message sent by a user, means for analyzing the message using natural language processing means and extracting important keywords and intent, means for generating an appropriate search query based on the extracted keywords and intent, means for sending the search query to a search engine interface, means for obtaining search results from the interface, means for analyzing the obtained search results, selecting top results, and converting them into a natural language response using a large-scale language model, means for conducting an advertising auction based on keywords related to the response, means for selecting an advertisement from the highest bidder and including it in a final response message, and means for sending the final response message to the user. This allows users to obtain useful information specifically and quickly, and related advertisements are also displayed effectively, thereby improving the user experience.
[0529] "User" means any person or entity that uses the System to search for information or ask a question.
[0530] A "Message" is a text communication sent by a User to ask a question or request information.
[0531] A "server" is a computer system that receives a user's message, analyzes it, and generates a response.
[0532] "Natural language processing means" is a collection of technologies and methods that analyze messages and extract important keywords and intentions.
[0533] "Keywords" are words or phrases that are considered particularly important in a message.
[0534] "Intent" refers to the purpose or question the user is trying to achieve through the message.
[0535] A "search query" is a syntax that represents search criteria sent to a search engine.
[0536] A "search engine interface" is a programmatic boundary through which external systems can send queries to a search engine and receive results.
[0537] A "search result" is a collection of information or data returned by a search engine in response to a search query.
[0538] "Result analysis means" refers to a collection of techniques and methods for analyzing the search results and selecting important information.
[0539] A "large-scale language model" is an artificial intelligence model that learns from massive amounts of text data to generate and understand natural language.
[0540] A "natural language response" is text generated based on acquired and analyzed information to communicate it to the user in an easy-to-understand manner.
[0541] An "ad auction" is a process in which advertisers compete for keywords and determine the placement of their ads based on the highest bid.
[0542] A "high bidder" is an advertiser who bids the highest amount in an advertising auction.
[0543] A "final response message" is a message sent to a user that includes a response message and related advertisements.
[0544] "Transmission means" refers to a collection of technologies and methods for delivering messages generated by the server to users.
[0545] This invention is a system that automates the process of searching for information or asking questions through a messaging application and displays relevant advertisements. The system is implemented by combining multiple software components and hardware resources.
[0546] First, a user opens a messaging application (e.g., a messaging app) on a device such as a smartphone or computer. The user types and sends a message with a question or request for information. The device receives the message and forwards it to the server.
[0547] Next, the server passes the received message to a natural language processing means. This processing is performed using a natural language processing model (for example, a morphological analyzer or semantic analyzer). At this stage, important keywords and the user's intention are extracted from the message. For example, if a user sends a message asking, "What smartphone do you recommend this year?", the server will extract keywords such as "this year," "recommended," and "smartphone."
[0548] Based on the extracted keywords, the server calls the search query generator to generate an appropriate search query. The search query is based on the user's intent and is generated in the form of "recommended smartphones 2023." This query is then sent to the search engine interface, for example, to the search engine API (search engine program interface). The API provides search results that match the query.
[0549] The server receives search results from the search engine API and analyzes them using a result analysis method. The top results are selected, such as "Smartphone Rankings 2023" or "Recommended Smartphone Models." The selected information is then passed to a response generator, which uses a large-scale language model (e.g., GPT-4) to generate a natural, colloquial response. For example, a response such as "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6" is generated.
[0550] After generating the response, the server conducts an ad auction using keywords related to the response. The advertiser with the highest bid based on the keywords included in the response (e.g., "smartphone" or "iPhone 14") is selected. The selected advertiser's ad is included in the final response message. The final message might look something like this: "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. Learn more: [ad URL]."
[0551] The final response message will be sent from the server to the user's device and displayed to the user. This system allows users to obtain quick and useful information and also displays relevant advertisements, improving the user experience.
[0552] Specific examples
[0553] Consider the case where a user sends a message asking, "What are the popular smartphones these days?" The device sends this message to the server, and the server's natural language processing unit extracts the keywords "recent," "popular," and "smartphone." The search query generation unit creates a query such as "popular smartphones 2023," and the search execution unit sends the query to the search engine API. From the returned search results, information such as "2023 popular smartphone rankings" is converted into a natural response using a large-scale language model. An advertising auction is then conducted based on the related keywords, and the highest-priced advertisement is included in the final message and sent to the user.
[0554] Prompt Sentence Examples
[0555] Please tell me about the latest popular smartphones.
[0556] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0557] Step 1:
[0558] A user opens a messaging application and types a message, such as a question or a request for information. The user taps the send button, and the device receives the message. The device then forwards this message to a server. The input is the text message typed by the user, and the output is the message data sent to the server.
[0559] Step 2:
[0560] The server passes the received message to the natural language processor, which analyzes the message and extracts important keywords and intent. For example, the keywords "recent," "popular," and "smartphone" are extracted from the message "What are the popular smartphones these days?" The input is the received message text, and the output is a list of extracted keywords.
[0561] Step 3:
[0562] Based on the extracted keywords, the server calls the search query generator to generate an appropriate search query. The generated search query will be in the format of "Popular smartphones 2023." The input is a list of extracted keywords, and the output is the generated search query.
[0563] Step 4:
[0564] The server sends the generated search query to a search engine interface, for example, the search query is sent as an HTTP request to a search engine API. The input is the generated search query, and the output is the search result data from the search engine API.
[0565] Step 5:
[0566] The server receives the search results and passes them to the result analysis unit. The result analysis unit analyzes the search results and selects the top results. For example, information such as "Popular smartphone rankings for 2023" or "Recommended smartphone models" is selected. The input is the search result data, and the output is a list of the selected information.
[0567] Step 6:
[0568] The server passes the selected information to the response generator, which uses a large-scale language model (e.g., GPT-4) to generate a natural, colloquial response based on the selected information. For example, it generates a response such as, "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6." The input is a list of selected information, and the output is the generated response message.
[0569] Step 7:
[0570] The server conducts an advertising auction using keywords related to the content of the generated response message. The advertiser who submitted the highest bid based on the keywords included in the response (e.g., "smartphone" or "iPhone 14") is selected. The input is the keywords related to the generated response message, and the output is the selected advertising information.
[0571] Step 8:
[0572] The server generates a final response message that includes the selected advertising information. For example, it creates a message in the format "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. For more information, click here: [advertising URL]." The input is the generated response message and advertising information, and the output is the final message. The server sends this final message to the user's device, which receives it and displays it to the user.
[0573] (Application example 1)
[0574] 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."
[0575] In conventional messaging applications, users had to perform many manual operations when searching for information, and search results were only displayed directly, without effectively delivering relevant advertisements. Furthermore, the accuracy of natural language understanding was low, making it difficult to accurately grasp user intent. This resulted in a poor user experience and insufficient advertising effectiveness.
[0576] 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.
[0577] In this invention, the server includes means for receiving a message sent by a user, means for analyzing the message using natural language processing means and generating a search query, means for sending the search query to an API of a search engine, means for obtaining search results from the API, means for analyzing the obtained search results and converting top results into colloquial responses using a large-scale language model, means for extracting keywords related to the responses and conducting an advertisement auction, means for selecting an advertisement from a high bidder and including it in a final response message, means for sending the final response message to the user, and means for providing the generated response message and advertisement together to the user. This enables users to not only efficiently search for information but also simultaneously receive highly relevant advertisements.
[0578] "User" means any person or entity that uses the System to search for information and receive response messages.
[0579] "Message" refers to the text or voice data that a user enters and sends to the system to search for information.
[0580] "Natural language processing means" refers to technology that analyzes messages sent by users and extracts important keywords and the user's intentions.
[0581] A "search query" refers to a search phrase or sentence generated based on keywords and intent extracted by natural language processing means.
[0582] "Search Engine API" means an application programming interface that provides an interface for submitting search queries to and retrieving results from an external search engine.
[0583] "Search results" refers to a list of information obtained from a search engine's API.
[0584] A "large-scale language model" is a model that uses machine learning algorithms generated by learning from massive amounts of text data, and is used to convert search results into natural, colloquial language.
[0585] An "ad auction" refers to the process by which advertisers bid based on keywords related to search results or responses, and the highest bidder's ad is selected.
[0586] "Final Response Message" means a message that includes a response message generated based on the search results and a selected advertisement.
[0587] The "means for providing the generated response message and advertisement to the user together" refers to a technology for transmitting the response message and the related advertisement to the user as a single message.
[0588] This invention is a system that automates the process of searching for information through a messaging application and displays relevant advertisements. This system consists of the following components:
[0589] First, the user sends a message from a device (e.g., a smartphone). The server receives this message and moves on to the next process.
[0590] The server analyzes the received message using natural language processing means. This natural language processing means includes software that analyzes text and voice. For example, the natural language processing library Transformers provided by Hugging Face can be used. In this example, if a user sends a message saying, "What is the most popular smartphone right now?", the natural language processing means will extract keywords such as "most popular right now" and "smartphone."
[0591] The server then generates a search query based on these keywords, such as "popular smartphones," and sends the generated search query to a search engine's API, which could be the Google Search API or another generic search engine API.
[0592] The server receives search results from the search engine's API, analyzes them, and selects the top results that are most relevant to the user's information needs.
[0593] The server then converts these top search results into natural-sounding responses using a large-scale language model, which can employ machine learning algorithms like OpenAI's GPT-4. For example, it might generate a response like, "The most popular smartphones right now are the iPhone 14 and the Google Pixel 6, and by 2023, they will be popular."
[0594] The server then extracts keywords related to the response and proceeds to conduct an ad auction. The auction selects the ad from the highest bidder and includes it in the response. For example, the message might read, "Currently, the most popular smartphones are the iPhone 14 and Google Pixel 6, and by 2023, they will be popular. Learn more here: [ad URL]."
[0595] Finally, the server sends this final response message to the user's device, allowing the user to quickly obtain the desired information and receive related advertisements at the same time.
[0596] For illustrative purposes, consider the following prompt:
[0597] What is the most popular smartphone right now?
[0598] "What are your recommended summer travel destinations?"
[0599] "I want to know more about the latest tablets."
[0600] The above is an embodiment of the invention, which allows users to efficiently search for the information they are looking for and display relevant advertisements, and also enables advertisers to carry out effective marketing.
[0601] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0602] Step 1:
[0603] The user uses the device to send a message to search for information through a messaging application, for example, by typing "Tell me about the latest smartphones."
[0604] Step 2:
[0605] The server receives a message sent from the terminal. This message is passed to the server as text data. The input here is the message sent by the user, and the output is the message content.
[0606] Step 3:
[0607] The server analyzes the received message using natural language processing. Specifically, it uses Hugging Face's Transformers library to analyze the meaning of the message and extract important keywords. The input is the text message, and the output is the extracted keywords. For example, keywords such as "latest" and "smartphone" are extracted.
[0608] Step 4:
[0609] The server generates a search query based on the extracted keywords. The generated search query is converted into a format that can be used as an API request for the search engine. The input is the extracted keywords, and the output is the search query. For example, the format might be "latest smartphone."
[0610] Step 5:
[0611] The server sends the generated search query to a search engine's API, for example using the Google Search API. The input is the search query and the output is the search results returned by the API.
[0612] Step 6:
[0613] The server receives search results obtained from a search engine's API. The received search results include multiple links and summary information. The input is the search results returned by the API, and the output is a list of these search results.
[0614] Step 7:
[0615] The server analyzes the received search results and selects the top relevant results, taking into account metadata such as search ranking and click-through rate. The input is a list of search results, and the output is the selected top results.
[0616] Step 8:
[0617] The server converts the selected search results into natural, colloquial responses using a large-scale language model (e.g., OpenAI's GPT-4). The input is the selected search results, and the output is a response message written in natural language. For example, a response such as "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6" is generated.
[0618] Step 9:
[0619] The server again extracts keywords associated with the response message and conducts an ad auction. It selects the advertisement of the highest bidder and includes it in the response message. The input is the keywords associated with the response message, and the output is the advertisement to be included in the final response message.
[0620] Step 10:
[0621] The server sends the generated response message and the selected advertisement as a single message to the user's device. The input is the final response message and advertisement, and the output is the final message sent to the user's device. For example, it might say, "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. For more information, click here: [Advertisement URL]."
[0622] The above are the specific processing steps for carrying out the present invention, which allow users to quickly obtain effective information and simultaneously provide relevant advertisements.
[0623] 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.
[0624] This system automates the process of searching for information or asking questions through messaging applications and improves the user experience by displaying relevant advertisements. By combining it with an emotion engine, the system recognizes the user's emotions and provides appropriate responses and advertisements based on those emotions.
[0625] System configuration
[0626] The system mainly includes the following elements:
[0627] 1. Message Receiving Unit - Receives messages sent by users.
[0628] 2. Natural Language Processing Unit - Analyzes received messages and extracts important keywords and intent.
[0629] 3. Emotion Recognition Unit - Equipped with an emotion engine that recognizes the user's emotions from the received message.
[0630] 4. Search query generation - Generates appropriate search queries based on extracted keywords, intent, and recognized sentiment.
[0631] 5. Search execution unit - Sends the search query to the search engine's API and retrieves the search results.
[0632] 6. Result analysis section - Analyzes the search results and selects important information.
[0633] 7. Response Generation - Generates natural-sounding, colloquial responses based on selected information using a large-scale language model, adjusting the tone and style of the response based on the perceived sentiment.
[0634] 8. Advertisement Selection Unit - Conducts an ad auction based on keywords related to the response and selects the advertisement with the highest bidder.
[0635] 9. Message sending section - Include the advertisement in the final response message and send it to the user.
[0636] Program processing
[0637] The processing of each part proceeds as follows:
[0638] 1. Message Reception
[0639] A user sends a question or information using a messaging application (e.g., LINE). The device (user's smartphone) receives this message and forwards it to the server.
[0640] 2. Natural Language Processing
[0641] The server analyzes the received message using a natural language processor. For example, if the message is "What smartphone do you recommend?", the system will extract keywords such as "recommended" and "smartphone."
[0642] 3. Emotion recognition
[0643] The server sends the message to the emotion recognition unit, and the emotion engine analyzes the user's emotion from the message, for example, determining whether the user is angry or depressed.
[0644] 4. Generating Search Queries
[0645] Based on the extracted keywords and the recognized emotions, the server generates search queries such as "recommended smartphones 2023" and adjusts the query depending on the emotions.
[0646] 5. Perform a search
[0647] The server sends the generated search query to a search engine's API, for example, the Google Search API, and receives search results from the API.
[0648] 6. Analysis of search results
[0649] The server receives search results from the search engine API, filters the top search results, and selects the most important information.
[0650] 7. Generating the Response
[0651] Based on the selected information, a large-scale language model (e.g., GPT-4) is used to generate natural-spoken responses. The tone and style of the response are adjusted based on emotion recognition results. For example, if the user is angry, a calm and polite tone is used.
[0652] 8. Advertisement Selection
[0653] An ad auction is conducted based on keywords related to the response (in this case, "smartphone" or "iPhone 14"). The server selects the advertiser who made the highest bid and obtains their ad information.
[0654] 9. Sending the final message
[0655] The server then creates a final response message by including the advertising information in the generated response message. For example, it might say, "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. For more information, click here: [advertising URL]." This is then sent to the user.
[0656] Specific examples
[0657] Consider the case where a user sends a message asking, "What are the popular smartphones these days?" The device sends this message to the server, where the server's natural language processing unit extracts keywords such as "recent," "popular," and "smartphone." At the same time, the emotion recognition unit analyzes the user's emotions and determines, for example, that the user is expressing "interest." The search query generation unit creates a query such as "popular smartphones 2023," and the search execution unit sends the query to the search engine API. From the returned search results, information such as "2023 popular smartphone rankings" is converted into a natural-sounding response using a large-scale language model. An advertising auction is then conducted based on related keywords, and the highest-priced advertisement is included in the final message and sent to the user. This series of processes allows the user to quickly obtain useful information and also provides relevant advertisements.
[0658] The processing flow will be explained below.
[0659] Step 1:
[0660] A user uses the LINE app to send a question or piece of information. For example, they type a message like "What are the most popular smartphones these days?" and press the send button.
[0661] Step 2:
[0662] The device sends the user's message to the LINE server, where it encrypts the message and transfers it according to the LINE protocol.
[0663] Step 3:
[0664] The LINE server receives the message and forwards it to the appropriate intermediate server, which then prepares to analyze the message content.
[0665] Step 4:
[0666] The server sends the message to the natural language processing unit, which then analyzes the message. For example, it extracts keywords such as "recommended" and "smartphone."
[0667] Step 5:
[0668] The server sends the message to the emotion recognition unit, and the emotion engine analyzes the user's emotion from the message. For example, the emotion engine recognizes emotions such as "interest" or "joy" from the user's context.
[0669] Step 6:
[0670] The server generates a search query based on the preprocessed information and the emotion recognition results. For example, if it recognizes that the user is expressing "interest," it generates the search query "Recommended popular smartphones 2023."
[0671] Step 7:
[0672] The server generates a search query and sends it to a search engine API. In this example, the query is sent to the Google Search API, and search results are received from the API.
[0673] Step 8:
[0674] The server receives search results from the search engine API. It filters the top search results and selects important information, such as "Recommended Smartphones for 2023."
[0675] Step 9:
[0676] The server then inputs the selected search results into a large-scale language model to generate natural, colloquial responses, such as "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6."
[0677] Step 10:
[0678] The server then re-analyzes the keywords associated with the response message to extract key keywords, such as "smartphone," "iPhone 14," and "Google Pixel 6."
[0679] Step 11:
[0680] The server conducts an advertising auction based on the extracted keywords, evaluates bids from advertisers, and selects the advertiser with the highest bid.
[0681] Step 12:
[0682] The server then incorporates the selected advertising information and URL into the final response message, such as "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. For more information, click here: [advertising URL]."
[0683] Step 13:
[0684] The server sends a final response message to the LINE server, which delivers the message to the user.
[0685] Step 14:
[0686] The device receives the message from the LINE server and displays it on the chat screen. The user sees a message that reads, "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. For more information, click here: [ad URL]."
[0687] Example 2
[0688] 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."
[0689] When users of messaging applications search for information or ask questions, they need to automate the process and provide relevant information and advertisements quickly and accurately. They also need to create responses that reflect the user's emotional state to improve the user experience.
[0690] 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.
[0691] In this invention, the server includes: means for receiving a message sent by a user; means for analyzing the message using natural language processing means and generating an inquiry query; means for recognizing emotions from the message; means for generating a search query based on the inquiry query and the emotion recognition results; means for sending the search query to an API of an information search engine; means for obtaining search results from the API; means for analyzing the obtained search results and converting the top results into natural responses using a large-scale language model; means for extracting keywords related to the response; means for conducting an advertising auction; means for selecting the advertisement of the highest bidder and including it in a final response message; and means for sending the final response message to the user. This allows users to receive information and advertisements quickly and with high relevance. Furthermore, appropriate responses can be provided according to the user's emotions, improving the user experience.
[0692] The "means for receiving messages sent by a user" refers to a device or system that has the function of receiving messages sent by a user through a message application and transferring the messages to a server.
[0693] "Natural language processing means" refers to a means for analyzing text data and extracting important keywords and intent, and involves processing including morphological analysis and semantic analysis.
[0694] The "means for recognizing emotions" is a technology that has the function of analyzing the user's emotions from the received message and determines the user's emotional state (for example, interest, joy, anger, etc.).
[0695] The "means for generating a search query" refers to a device or system that has the function of creating an appropriate search query based on the extracted keywords and the recognized sentiment.
[0696] "Means for sending to the API of the information search engine" refers to a device or system that has the function of sending a request to the API of the information search engine using the generated search query and obtaining search results.
[0697] "Means for obtaining search results" refers to a device or system that has the function of receiving search results returned from the API of an information search engine and obtaining the necessary data.
[0698] "Means for analyzing search results" refers to the technology for analyzing the search results obtained, selecting the top results, and extracting the necessary information.
[0699] A "large-scale language model" is a model that uses machine learning algorithms to learn from large amounts of text data and generate text that sounds natural and human-like.
[0700] The "means for converting into a natural response" refers to a device or system that has the function of generating a response in natural language that is easy for the user to understand, based on the analyzed search results.
[0701] The "means for conducting an advertisement auction" is a technique for conducting an advertisement auction based on keywords related to the generated response message and selecting the advertisement of the highest bidder.
[0702] The "means for selecting the advertisement of the highest bidder" refers to a device or system that has the function of selecting the advertisement of the advertiser who made the highest bid based on the results of the advertising auction and acquiring information about it.
[0703] The "means for transmitting a final response message to a user" refers to a device or system having a function for including an advertisement in the generated response message and transmitting it to the user as a final message.
[0704] The present invention provides a system for automating the process of searching for information or asking a question through a messaging application, and providing highly relevant information and advertisements. Specific embodiments of the system are described below.
[0705] Hardware and software used
[0706] The system uses the following hardware and software:
[0707] Device: A device that runs a messaging application, such as a user's smartphone or tablet.
[0708] Server: A computer system that receives messages, processes natural language, recognizes emotions, generates search queries, communicates with information search engine APIs, analyzes search results, generates responses, selects advertisements, and finally sends messages.
[0709] Natural language processing software: For morphological and semantic analysis of text data, we use, for example, spaCy, a Python NLP software.
[0710] Emotion recognition engine: To analyze the user's emotions, for example, use the Emotion API from Microsoft Azure's Cognitive Services.
[0711] Information Search Engine APIs: Search for information using search engine APIs such as the Google Custom Search API.
[0712] Large-scale language models: Models using machine learning algorithms, such as GPT-4.
[0713] Advertising auction system: A system for conducting advertising auctions using the Google Ads API, etc.
[0714] System Operation
[0715] Message Reception
[0716] A user uses a messaging application (e.g., LINE) to send a message such as, "What are the most popular smartphones these days?" The device receives this message and forwards it to the server. At this time, the device sends the message data to the server via the Internet.
[0717] Natural Language Processing
[0718] The server analyzes the received messages using natural language processing to extract important keywords such as "recent," "popular," and "smartphone." Specifically, it uses spaCy, a Python NLP software, to perform morphological analysis.
[0719] emotion recognition
[0720] The server sends the message to an emotion recognition unit and analyzes the user's emotions. For example, it uses the Emotion API from Microsoft Azure's Cognitive Services, an API dedicated to emotion analysis, to determine whether the message shows interest.
[0721] Generating a search query
[0722] The server generates a search query based on the extracted keywords and the emotion recognition results. The generated query will be in the form of "Popular smartphones 2023." If the emotion recognition result is "interest," the query will be adjusted to "Recommended popular smartphones 2023."
[0723] Performing a Search
[0724] The server sends the generated search query to the Google Search API to retrieve search results. Specifically, it sends the query to the Google Custom Search API using an HTTP request.
[0725] Parsing search results
[0726] The server receives search results from the Google Search API and filters the top results to select the most important information, using HTML parsing tools such as BeautifulSoup.
[0727] Generating a response
[0728] Based on the selected information, the server uses a large-scale language model (e.g., GPT-4) to generate a natural, colloquial response, such as, "Popular smartphones in 2023 are the iPhone 14 and Google Pixel 6."
[0729] Ad selection
[0730] The server will then use keywords related to the response message to conduct an ad auction, such as "smartphone" or "iPhone 14," using the Google Ads API to select the highest bidder's ad.
[0731] Sending the final message
[0732] The server combines the generated response message with the advertising information to create a final message, which is then sent to the device and presented to the user. For example, a message such as "Popular smartphones in 2023 will be the iPhone 14 and Google Pixel 6. For more information, click here: [advertising URL]" could be sent to the device.
[0733] Specific examples
[0734] If a user sends a message asking "What are the most popular smartphones these days?", the following happens:
[0735] 1. The device forwards the message to the server.
[0736] 2. The server analyzes the message and extracts the keywords "recent," "popular," and "smartphone."
[0737] 3. The server uses an emotion engine to analyze whether the person is showing "interest."
[0738] 4. The server generates the search query "popular smartphones 2023."
[0739] 5. The server sends a query to the Google Search API and retrieves the search results.
[0740] 6. The server selects important information and extracts key smartphone information.
[0741] 7. The server uses GPT-4 to generate a response such as, "Popular smartphones in 2023 will be the iPhone 14 and Google Pixel 6."
[0742] 8. The server conducts an advertising auction for "smartphones" and selects the advertisement from the highest bidder.
[0743] 9. The server sends the final message to the device, which then displays the message to the user: "Popular smartphones in 2023 will be the iPhone 14 and Google Pixel 6. Learn more: [ad URL]."
[0744] Example prompts for generative AI models
[0745] "Write a code that uses emotion recognition to determine that a user is interested in the question 'What are the popular smartphones these days?' and then uses the Google Search API to provide a ranking of the most popular smartphones for 2023."
[0746] This prompt can be used as input for a generative AI model to generate accurate code and explanations.
[0747] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0748] Step 1: Receiving a message
[0749] A user sends a message using a messaging application asking, "What are the popular smartphones these days?"
[0750] Input: User message: "What are the popular smartphones these days?"
[0751] The terminal receives this message and forwards it to a server over the Internet.
[0752] Output: Message data transferred to the server
[0753] Step 2: Natural Language Processing
[0754] The server analyzes the received message using natural language processing means.
[0755] Input: Message data transferred to the server
[0756] Specifically, morphological analysis is performed using spaCy, a Python NLP software, to extract important keywords such as "recent," "popular," and "smartphone."
[0757] Output: Extracted keywords "recent", "popular", "smartphone"
[0758] Step 3: Emotion Recognition
[0759] The server sends the message to the emotion engine, which analyzes the user's emotions.
[0760] Input: Message data transferred to the server
[0761] For example, the Emotion API of Microsoft Azure's Cognitive Services can be used to determine whether the message content shows interest.
[0762] Output: Determined emotion "interest"
[0763] Step 4: Generating a search query
[0764] The server generates a search query based on the extracted keywords and emotion recognition results.
[0765] Input: Extracted keywords "recent", "popular", "smartphone", determined emotion "interest"
[0766] The generated query will be "Popular smartphones 2023." If the emotion recognition result is "interest," the query will be adjusted to "Popular smartphone recommendations 2023."
[0767] Output: Generated search query "Popular smartphone recommendations 2023"
[0768] Step 5: Perform a search
[0769] The server generates a search query and sends it to an information search engine API to retrieve search results.
[0770] Input: Generated search query "Popular smartphone recommendations 2023"
[0771] Specifically, an HTTP request is used to send a query to an information search engine's API (e.g., Google Custom Search API).
[0772] Output: Search results returned from the search engine API
[0773] Step 6: Parse the search results
[0774] The server receives and analyzes search results obtained from the search engine API.
[0775] Input: Search results returned from the search engine API
[0776] Use an HTML parsing tool like BeautifulSoup to filter the top search results and select the important information.
[0777] Output: Selected important information
[0778] Step 7: Generate a response
[0779] The server uses a large-scale language model to generate natural responses based on the selected information.
[0780] Input: Selected important information
[0781] Here, GPT-4 is used to generate natural, colloquial responses such as, "Popular smartphones in 2023 will be the iPhone 14 and Google Pixel 6."
[0782] Output: A natural response message is generated.
[0783] Step 8: Ad selection
[0784] The server conducts an advertisement auction using keywords associated with the response message.
[0785] Input: Keywords related to the generated natural response message, such as "smartphone" or "iPhone 14"
[0786] For example, use the Google Ads API to select ads from the highest bidders.
[0787] Output: Selected advertising information
[0788] Step 9: Sending the final message
[0789] The server generates a response message and combines it with the advertising information to create a final message.
[0790] Input: Generated natural response message, selected advertising information
[0791] This is sent to the device and presented to the user. For example, a message such as "Popular smartphones in 2023 will be the iPhone 14 and Google Pixel 6. For more information, click here: [advertising URL]" is sent to the device.
[0792] Output: The final message presented to the user
[0793] (Application example 2)
[0794] 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."
[0795] In traditional food delivery systems, users have to spend a lot of time searching for the right menu or restaurant, and the system does not provide suggestions or responses that take into account the user's emotions and moods. Furthermore, relevant advertisements do not necessarily match the user's interests and needs, which does not improve the user experience. This leads to dissatisfaction for users.
[0796] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[0797] In this invention, the server includes means for receiving a message sent by a user, means for analyzing the message using natural language processing means and generating a search query, means for recognizing emotions from the message, means for sending the search query to a search engine API, means for obtaining search results from the API, means for analyzing the obtained search results and converting top results into colloquial responses using a large-scale language model, means for adjusting the tone and style of the response based on the emotions, means for extracting keywords related to the response and conducting an advertising auction, means for selecting an advertisement from the highest bidder and including it in a final response message, and means for sending the final response message to the user. This enables the presentation of flexible and personalized responses and related advertisements that take into account the user's emotions.
[0798] "User" refers to a person who uses the food delivery system.
[0799] "Message" means a text-based communication sent by a User to the System.
[0800] "Natural language processing" refers to the technology of analyzing messages and extracting keywords and intent.
[0801] "Search query" means a string of characters generated to specify an information request to a search engine.
[0802] "Emotion recognition" refers to the process of analyzing and recognizing a user's emotional state from a message.
[0803] "Search Engine API" refers to an application program interface used for external information searches.
[0804] "Search Results" refers to the information returned by a search engine based on a search query.
[0805] A "large-scale language model" refers to a natural language processing model that is trained using a very large amount of text data.
[0806] "Adjusting tone and style" refers to the process of changing the way a response is phrased based on the user's feelings.
[0807] An "ad auction" refers to the process in which multiple advertisers compete to acquire advertising space.
[0808] "Final response message" refers to a message containing the response result and related advertisements that the system provides to the user.
[0809] This invention is designed to automatically provide personalized suggestions and advertisements based on user sentiment in a specific food delivery system. The system consists of the following components:
[0810] Specific system configuration
[0811] 1. User message receiving section
[0812] A user sends a message to the system using their own device (e.g., a smartphone). This message is received by the server. For example, suppose a user asks, "Do you have any lunch recommendations?"
[0813] 2. Natural Language Processing Unit
[0814] The received message is analyzed. Natural language processing technology is used to extract important keywords and phrases. For example, keywords such as "recommended" and "lunch" are analyzed to grasp the main points. Hugging Face's natural language processing model (e.g., GPT-4) is used here.
[0815] 3. Emotion recognition section
[0816] The system recognizes the user's emotions from the content of the message. Using an emotion recognition API, it analyzes the user's emotions, such as whether they are feeling stressed or happy. For example, if a user sends a message saying, "I've been feeling stressed lately," the system analyzes their emotional state.
[0817] 4. Search query generation and search execution
[0818] Based on the extracted keywords and the recognized sentiment, a search query is generated, such as "recommended lunch to relieve stress," and sent to the search engine's API, through which related information is retrieved.
[0819] 5. Result Analysis and Response Generation
[0820] The search results are received and converted into a colloquial response using a large-scale language model. Based on the information obtained, a response message is generated in a tone and style that reflects the emotion. For example, a response could be constructed in the form of "An acai bowl is a recommended lunch that will help relieve stress."
[0821] 6. Advertising Selection Department
[0822] Keywords related to the response are extracted and an ad auction is held. The ad from the highest bidder is selected and included in the final response message. For example, a message containing "Advertisement for Specialty Acai Bowls" is generated.
[0823] 7. Message sending part
[0824] A final response message is sent to the user, which contains a personalized answer to the user's question along with a relevant advertisement.
[0825] Hardware and software used
[0826] Server: Runs on a high-performance cloud service (e.g., AWS, Google Cloud Platform).
[0827] Natural language processing models: Use large-scale language models such as Hugging Face's "GPT-4."
[0828] Emotion Recognition API: Use emotion management services such as the Emotion Recognition API.
[0829] Search Engine API: Using Google Search API as an example.
[0830] Advertising API: Use a dedicated advertising API to conduct ad auctions.
[0831] Examples of specific examples and prompts
[0832] Examples:
[0833] Suppose a user sends a message saying, "I've been feeling stressed lately. Do you have any lunch recommendations?" The server receives this message, and the natural language processing unit extracts "recommended" and "lunch" as keywords. The emotion recognition unit recognizes the sense of stress and generates the search query "recommended lunch stress relief." Information from the search results, such as "acai bowl," is converted into a colloquial response using a large-scale language model. The advertisement selection unit adds the related "ad for special acai bowls," generates a final response message, and sends it to the user.
[0834] Example prompt sentence:
[0835] When a user asks, "I've been feeling stressed lately, do you have any lunch recommendations?" generate a response with relaxing food suggestions and relevant ads.
[0836] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0837] Step 1:
[0838] The server receives the message sent by the user.
[0839] Input: A message sent by the user from their device (e.g., "Do you have any lunch recommendations?").
[0840] Processing: The message receiver receives the message and passes the data to the next process.
[0841] Output: The received user message (text data) is obtained as output.
[0842] Step 2:
[0843] The server analyzes the received message using a natural language processor.
[0844] Input: The user message received in step 1.
[0845] Processing: Using natural language processing techniques (e.g., GPT-4), we extract important keywords and phrases from the message. In this example, we analyze keywords such as "recommendation" and "lunch."
[0846] Output: The extracted keywords and phrases are obtained as output.
[0847] Step 3:
[0848] The server recognizes the emotion from the message.
[0849] Input: The user message received in step 1.
[0850] Processing: Using emotion recognition API, analyze the user's emotion from the message. For example, recognize the emotional state of the user, such as "the user is feeling stressed."
[0851] Output: The recognized emotion information is obtained as the output.
[0852] Step 4:
[0853] The server generates a search query based on the extracted keywords and the recognized sentiment and sends it to the search engine's API.
[0854] Input: Keywords extracted in step 2 ("recommended", "lunch") and emotion information recognized in step 3 ("stress").
[0855] Processing: Generate a search query such as "recommended lunches to relieve stress" and send it to the search engine's API.
[0856] Output: The output is the search query sent to the search API.
[0857] Step 5:
[0858] The server retrieves search results from the search engine's API.
[0859] Input: The search query generated in step 4.
[0860] Process: Receive search results returned by the search engine API.
[0861] Output: The search result data is obtained as output.
[0862] Step 6:
[0863] The server analyzes the search results and converts them into colloquial responses using a large-scale language model.
[0864] Input: Search result data obtained in step 5.
[0865] Processing: Using a large-scale language model (such as GPT-4), we select important information from the search results and generate a colloquial response message that is easy for the user to understand. We adjust the tone and style of the response based on emotion recognition results.
[0866] Output: The output is the generated colloquial response message.
[0867] Step 7:
[0868] The server extracts keywords associated with the responses and conducts an advertisement auction.
[0869] Input: The relevant keywords for the response message generated in step 6.
[0870] Processing: Based on the extracted keywords (e.g., "lunch" or "acai bowl"), an ad auction is conducted using the advertising API, and the ad of the advertiser who made the highest bid is selected.
[0871] Output: The selected advertising data is obtained as output.
[0872] Step 8:
[0873] The server generates a final response message and sends it to the user.
[0874] Input: The response message generated in step 6 and the advertising data selected in step 7.
[0875] Processing: The response message includes the advertisement and is sent securely and quickly to the user's device. For example, it may contain something like, "Our recommended lunch for stress relief is an acai bowl. For more information on our specialty acai bowls, click here: [ad URL]."
[0876] Output: The output is the final response message sent to the user.
[0877] 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.
[0878] 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.
[0879] 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.
[0880] [Third embodiment]
[0881] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[0882] 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.
[0883] 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).
[0884] 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.
[0885] 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.
[0886] 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).
[0887] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[0888] 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.
[0889] 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.
[0890] 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.
[0891] 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.
[0892] 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."
[0893] The present invention is a system that automates the process of searching for information or asking questions through messaging applications and improves the user experience by displaying relevant advertisements.
[0894] System configuration
[0895] The system mainly includes the following elements:
[0896] 1. Message Receiving Unit - Receives messages sent by users.
[0897] 2. Natural Language Processing Unit - Analyzes received messages and extracts important keywords and intent.
[0898] 3. Search query generation section - Generates appropriate search queries based on the extracted keywords and intent.
[0899] 4. Search execution unit - Sends the search query to the search engine's API and retrieves the search results.
[0900] 5. Result analysis section - Analyzes the search results and selects important information.
[0901] 6. Response Generation - Generates natural-sounding responses using a large-scale language model based on the selected information.
[0902] 7. Advertisement Selection Unit - Conducts an ad auction based on keywords related to the response and selects the advertisement with the highest bidder.
[0903] 8. Message sending section - Include the advertisement in the final response message and send it to the user.
[0904] Program processing
[0905] The processing of each part proceeds as follows:
[0906] 1. Message Reception
[0907] A user sends a question or information using a messaging application (e.g., LINE). The device (user's smartphone) receives this message and forwards it to the server.
[0908] 2. Natural Language Processing
[0909] The server analyzes the message it receives with its natural language processor. For example, if a user sends a message asking, "What smartphone do you recommend this year?", the natural language processor will extract keywords such as "this year," "recommended," and "smartphone."
[0910] 3. Generating search queries
[0911] Based on the extracted keywords, the server generates search queries such as "recommended smartphones 2023."
[0912] 4. Perform a search
[0913] The server then sends the generated search query to the API of a search engine (e.g., Google Search), which returns search results that match the query.
[0914] 5. Analysis of search results
[0915] The server receives the search results and selects the top information from them, such as "Smartphone Rankings 2023" or "Recommended Smartphone Models."
[0916] 6. Generating the Response
[0917] Based on the selected information, a large-scale language model (e.g., GPT-4) is used to generate natural, colloquial responses, such as "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6."
[0918] 7. Advertisement Selection
[0919] An ad auction is conducted based on keywords related to the response (in this case, "smartphone" or "iPhone 14"). The server selects the advertiser who made the highest bid and obtains their ad information.
[0920] 8. Sending the final message
[0921] The server then creates a final response message by including the advertising information in the generated response message. For example, the message might read, "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. For more information, click here: [advertising URL]." This is then sent to the user.
[0922] Specific examples
[0923] Consider the case where a user sends a message asking, "What are the popular smartphones these days?" The device sends this message to the server, and the server's natural language processing unit extracts the keywords "recent," "popular," and "smartphone." The search query generation unit creates a query such as "popular smartphones 2023," and the search execution unit sends the query to the search engine API. From the returned search results, information such as "2023 popular smartphone rankings" is converted into a natural response using a large-scale language model. An advertising auction is then conducted based on the related keywords, and the highest-priced advertisement is included in the final message and sent to the user. This series of processes allows the user to quickly obtain useful information and also provides relevant advertisements.
[0924] The processing flow will be explained below.
[0925] Step 1:
[0926] A user sends a question or piece of information using the LINE app. For example, they type a message like "What smartphone do you recommend?" and press the send button.
[0927] Step 2:
[0928] The device sends the user's message to the LINE server, where it encrypts the message and transfers it according to the LINE protocol.
[0929] Step 3:
[0930] The LINE server receives the message and forwards it to the appropriate intermediate server, which then prepares to analyze the message content.
[0931] Step 4:
[0932] The server sends the message to the natural language processing unit, which then analyzes the message. For example, it extracts keywords such as "recommended," "smartphone," and "what."
[0933] Step 5:
[0934] The server generates a search query based on the preprocessed information. Specifically, it creates a search query such as "recommended smartphones 2023" based on the results of the natural language processing unit.
[0935] Step 6:
[0936] The server sends the search query to a search engine API, for example, the Google Search API, and receives the search results from the API.
[0937] Step 7:
[0938] The server receives search results from the search engine API, filters the top search results, and selects the most important information.
[0939] Step 8:
[0940] The server then inputs the selected search results into a large-scale language model to generate natural, colloquial responses, such as "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6."
[0941] Step 9:
[0942] The server then re-analyzes the keywords associated with the response message, extracting advertising keywords such as "smartphone," "iPhone 14," and "Google Pixel 6."
[0943] Step 10:
[0944] The server conducts an advertising auction based on the extracted keywords, evaluates bids from advertisers, and selects the advertiser with the highest bid.
[0945] Step 11:
[0946] The server then incorporates the selected advertising information and URL into the final response message, such as "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. For more information, click here: [advertising URL]."
[0947] Step 12:
[0948] The server sends a final response message to the LINE server, which delivers the message to the user.
[0949] Step 13:
[0950] The device receives the message from the LINE server and displays it on the chat screen. The user sees a message that reads, "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. For more information, click here: [ad URL]."
[0951] Example 1
[0952] 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."
[0953] Conventional search systems and information provision systems have difficulty in quickly providing appropriate information in response to user questions and requests. Furthermore, they lack a means to effectively display relevant advertisements, making it difficult for advertisers to display their advertisements at the optimal time. As a result, there is a demand for a means to improve user satisfaction.
[0954] 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.
[0955] In this invention, the server includes means for receiving a message sent by a user, means for analyzing the message using natural language processing means and extracting important keywords and intent, means for generating an appropriate search query based on the extracted keywords and intent, means for sending the search query to a search engine interface, means for obtaining search results from the interface, means for analyzing the obtained search results, selecting top results, and converting them into a natural language response using a large-scale language model, means for conducting an advertising auction based on keywords related to the response, means for selecting an advertisement from the highest bidder and including it in a final response message, and means for sending the final response message to the user. This allows users to obtain useful information specifically and quickly, and related advertisements are also displayed effectively, thereby improving the user experience.
[0956] "User" means any person or entity that uses the System to search for information or ask a question.
[0957] A "Message" is a text communication sent by a User to ask a question or request information.
[0958] A "server" is a computer system that receives a user's message, analyzes it, and generates a response.
[0959] "Natural language processing means" is a collection of technologies and methods that analyze messages and extract important keywords and intentions.
[0960] "Keywords" are words or phrases that are considered particularly important in a message.
[0961] "Intent" refers to the purpose or question the user is trying to achieve through the message.
[0962] A "search query" is a syntax that represents search criteria sent to a search engine.
[0963] A "search engine interface" is a programmatic boundary through which external systems can send queries to a search engine and receive results.
[0964] A "search result" is a collection of information or data returned by a search engine in response to a search query.
[0965] "Result analysis means" refers to a collection of techniques and methods for analyzing the search results and selecting important information.
[0966] A "large-scale language model" is an artificial intelligence model that learns from massive amounts of text data to generate and understand natural language.
[0967] A "natural language response" is text generated based on acquired and analyzed information to communicate it to the user in an easy-to-understand manner.
[0968] An "ad auction" is a process in which advertisers compete for keywords and determine the placement of their ads based on the highest bid.
[0969] A "high bidder" is an advertiser who bids the highest amount in an advertising auction.
[0970] A "final response message" is a message sent to a user that includes a response message and related advertisements.
[0971] "Transmission means" refers to a collection of technologies and methods for delivering messages generated by the server to users.
[0972] This invention is a system that automates the process of searching for information or asking questions through a messaging application and displays relevant advertisements. The system is implemented by combining multiple software components and hardware resources.
[0973] First, a user opens a messaging application (e.g., a messaging app) on a device such as a smartphone or computer. The user types and sends a message with a question or request for information. The device receives the message and forwards it to the server.
[0974] Next, the server passes the received message to a natural language processing means. This processing is performed using a natural language processing model (for example, a morphological analyzer or semantic analyzer). At this stage, important keywords and the user's intention are extracted from the message. For example, if a user sends a message asking, "What smartphone do you recommend this year?", the server will extract keywords such as "this year," "recommended," and "smartphone."
[0975] Based on the extracted keywords, the server calls the search query generator to generate an appropriate search query. The search query is based on the user's intent and is generated in the form of "recommended smartphones 2023." This query is then sent to the search engine interface, for example, to the search engine API (search engine program interface). The API provides search results that match the query.
[0976] The server receives search results from the search engine API and analyzes them using a result analysis method. The top results are selected, such as "Smartphone Rankings 2023" or "Recommended Smartphone Models." The selected information is then passed to a response generator, which uses a large-scale language model (e.g., GPT-4) to generate a natural, colloquial response. For example, a response such as "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6" is generated.
[0977] After generating the response, the server conducts an ad auction using keywords related to the response. The advertiser with the highest bid based on the keywords included in the response (e.g., "smartphone" or "iPhone 14") is selected. The selected advertiser's ad is included in the final response message. The final message might look something like this: "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. Learn more: [ad URL]."
[0978] The final response message will be sent from the server to the user's device and displayed to the user. This system allows users to obtain quick and useful information and also displays relevant advertisements, improving the user experience.
[0979] Specific examples
[0980] Consider the case where a user sends a message asking, "What are the popular smartphones these days?" The device sends this message to the server, and the server's natural language processing unit extracts the keywords "recent," "popular," and "smartphone." The search query generation unit creates a query such as "popular smartphones 2023," and the search execution unit sends the query to the search engine API. From the returned search results, information such as "2023 popular smartphone rankings" is converted into a natural response using a large-scale language model. An advertising auction is then conducted based on the related keywords, and the highest-priced advertisement is included in the final message and sent to the user.
[0981] Prompt Sentence Examples
[0982] Please tell me about the latest popular smartphones.
[0983] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0984] Step 1:
[0985] A user opens a messaging application and types a message, such as a question or a request for information. The user taps the send button, and the device receives the message. The device then forwards this message to a server. The input is the text message typed by the user, and the output is the message data sent to the server.
[0986] Step 2:
[0987] The server passes the received message to the natural language processor, which analyzes the message and extracts important keywords and intent. For example, the keywords "recent," "popular," and "smartphone" are extracted from the message "What are the popular smartphones these days?" The input is the received message text, and the output is a list of extracted keywords.
[0988] Step 3:
[0989] Based on the extracted keywords, the server calls the search query generator to generate an appropriate search query. The generated search query will be in the format of "Popular smartphones 2023." The input is a list of extracted keywords, and the output is the generated search query.
[0990] Step 4:
[0991] The server sends the generated search query to a search engine interface, for example, the search query is sent as an HTTP request to a search engine API. The input is the generated search query, and the output is the search result data from the search engine API.
[0992] Step 5:
[0993] The server receives the search results and passes them to the result analysis unit. The result analysis unit analyzes the search results and selects the top results. For example, information such as "Popular smartphone rankings for 2023" or "Recommended smartphone models" is selected. The input is the search result data, and the output is a list of the selected information.
[0994] Step 6:
[0995] The server passes the selected information to the response generator, which uses a large-scale language model (e.g., GPT-4) to generate a natural, colloquial response based on the selected information. For example, it generates a response such as, "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6." The input is a list of selected information, and the output is the generated response message.
[0996] Step 7:
[0997] The server conducts an advertising auction using keywords related to the content of the generated response message. The advertiser who submitted the highest bid based on the keywords included in the response (e.g., "smartphone" or "iPhone 14") is selected. The input is the keywords related to the generated response message, and the output is the selected advertising information.
[0998] Step 8:
[0999] The server generates a final response message that includes the selected advertising information. For example, it creates a message in the format "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. For more information, click here: [advertising URL]." The input is the generated response message and advertising information, and the output is the final message. The server sends this final message to the user's device, which receives it and displays it to the user.
[1000] (Application example 1)
[1001] 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."
[1002] In conventional messaging applications, users had to perform many manual operations when searching for information, and search results were only displayed directly, without effectively delivering relevant advertisements. Furthermore, the accuracy of natural language understanding was low, making it difficult to accurately grasp user intent. This resulted in a poor user experience and insufficient advertising effectiveness.
[1003] 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.
[1004] In this invention, the server includes means for receiving a message sent by a user, means for analyzing the message using natural language processing means and generating a search query, means for sending the search query to an API of a search engine, means for obtaining search results from the API, means for analyzing the obtained search results and converting top results into colloquial responses using a large-scale language model, means for extracting keywords related to the responses and conducting an advertisement auction, means for selecting an advertisement from a high bidder and including it in a final response message, means for sending the final response message to the user, and means for providing the generated response message and advertisement together to the user. This enables users to not only efficiently search for information but also simultaneously receive highly relevant advertisements.
[1005] "User" means any person or entity that uses the System to search for information and receive response messages.
[1006] "Message" refers to the text or voice data that a user enters and sends to the system to search for information.
[1007] "Natural language processing means" refers to technology that analyzes messages sent by users and extracts important keywords and the user's intentions.
[1008] A "search query" refers to a search phrase or sentence generated based on keywords and intent extracted by natural language processing means.
[1009] "Search Engine API" means an application programming interface that provides an interface for submitting search queries to and retrieving results from an external search engine.
[1010] "Search results" refers to a list of information obtained from a search engine's API.
[1011] A "large-scale language model" is a model that uses machine learning algorithms generated by learning from massive amounts of text data, and is used to convert search results into natural, colloquial language.
[1012] An "ad auction" refers to the process by which advertisers bid based on keywords related to search results or responses, and the highest bidder's ad is selected.
[1013] "Final Response Message" means a message that includes a response message generated based on the search results and a selected advertisement.
[1014] The "means for providing the generated response message and advertisement to the user together" refers to a technology for transmitting the response message and the related advertisement to the user as a single message.
[1015] This invention is a system that automates the process of searching for information through a messaging application and displays relevant advertisements. This system consists of the following components:
[1016] First, the user sends a message from a device (e.g., a smartphone). The server receives this message and moves on to the next process.
[1017] The server analyzes the received message using natural language processing means. This natural language processing means includes software that analyzes text and voice. For example, the natural language processing library Transformers provided by Hugging Face can be used. In this example, if a user sends a message saying, "What is the most popular smartphone right now?", the natural language processing means will extract keywords such as "most popular right now" and "smartphone."
[1018] The server then generates a search query based on these keywords, such as "popular smartphones," and sends the generated search query to a search engine's API, which could be the Google Search API or another generic search engine API.
[1019] The server receives search results from the search engine's API, analyzes them, and selects the top results that are most relevant to the user's information needs.
[1020] The server then converts these top search results into natural-sounding responses using a large-scale language model, which can employ machine learning algorithms like OpenAI's GPT-4. For example, it might generate a response like, "The most popular smartphones right now are the iPhone 14 and the Google Pixel 6, and by 2023, they will be popular."
[1021] The server then extracts keywords related to the response and proceeds to conduct an ad auction. The auction selects the ad from the highest bidder and includes it in the response. For example, the message might read, "Currently, the most popular smartphones are the iPhone 14 and Google Pixel 6, and by 2023, they will be popular. Learn more here: [ad URL]."
[1022] Finally, the server sends this final response message to the user's device, allowing the user to quickly obtain the desired information and receive related advertisements at the same time.
[1023] For illustrative purposes, consider the following prompt:
[1024] What is the most popular smartphone right now?
[1025] "What are your recommended summer travel destinations?"
[1026] "I want to know more about the latest tablets."
[1027] The above is an embodiment of the invention, which allows users to efficiently search for the information they are looking for and display relevant advertisements, and also enables advertisers to carry out effective marketing.
[1028] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1029] Step 1:
[1030] The user uses the device to send a message to search for information through a messaging application, for example, by typing "Tell me about the latest smartphones."
[1031] Step 2:
[1032] The server receives a message sent from the terminal. This message is passed to the server as text data. The input here is the message sent by the user, and the output is the message content.
[1033] Step 3:
[1034] The server analyzes the received message using natural language processing. Specifically, it uses Hugging Face's Transformers library to analyze the meaning of the message and extract important keywords. The input is the text message, and the output is the extracted keywords. For example, keywords such as "latest" and "smartphone" are extracted.
[1035] Step 4:
[1036] The server generates a search query based on the extracted keywords. The generated search query is converted into a format that can be used as an API request for the search engine. The input is the extracted keywords, and the output is the search query. For example, the format might be "latest smartphone."
[1037] Step 5:
[1038] The server sends the generated search query to a search engine's API, for example using the Google Search API. The input is the search query and the output is the search results returned by the API.
[1039] Step 6:
[1040] The server receives search results obtained from a search engine's API. The received search results include multiple links and summary information. The input is the search results returned by the API, and the output is a list of these search results.
[1041] Step 7:
[1042] The server analyzes the received search results and selects the top relevant results, taking into account metadata such as search ranking and click-through rate. The input is a list of search results, and the output is the selected top results.
[1043] Step 8:
[1044] The server converts the selected search results into natural, colloquial responses using a large-scale language model (e.g., OpenAI's GPT-4). The input is the selected search results, and the output is a response message written in natural language. For example, a response such as "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6" is generated.
[1045] Step 9:
[1046] The server again extracts keywords associated with the response message and conducts an ad auction. It selects the advertisement of the highest bidder and includes it in the response message. The input is the keywords associated with the response message, and the output is the advertisement to be included in the final response message.
[1047] Step 10:
[1048] The server sends the generated response message and the selected advertisement as a single message to the user's device. The input is the final response message and advertisement, and the output is the final message sent to the user's device. For example, it might say, "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. For more information, click here: [Advertisement URL]."
[1049] The above are the specific processing steps for carrying out the present invention, which allow users to quickly obtain effective information and simultaneously provide relevant advertisements.
[1050] 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.
[1051] This system automates the process of searching for information or asking questions through messaging applications and improves the user experience by displaying relevant advertisements. By combining it with an emotion engine, the system recognizes the user's emotions and provides appropriate responses and advertisements based on those emotions.
[1052] System configuration
[1053] The system mainly includes the following elements:
[1054] 1. Message Receiving Unit - Receives messages sent by users.
[1055] 2. Natural Language Processing Unit - Analyzes received messages and extracts important keywords and intent.
[1056] 3. Emotion Recognition Unit - Equipped with an emotion engine that recognizes the user's emotions from the received message.
[1057] 4. Search query generation - Generates appropriate search queries based on extracted keywords, intent, and recognized sentiment.
[1058] 5. Search execution unit - Sends the search query to the search engine's API and retrieves the search results.
[1059] 6. Result analysis section - Analyzes the search results and selects important information.
[1060] 7. Response Generation - Generates natural-sounding, colloquial responses based on selected information using a large-scale language model, adjusting the tone and style of the response based on the perceived sentiment.
[1061] 8. Advertisement Selection Unit - Conducts an ad auction based on keywords related to the response and selects the advertisement with the highest bidder.
[1062] 9. Message sending section - Include the advertisement in the final response message and send it to the user.
[1063] Program processing
[1064] The processing of each part proceeds as follows:
[1065] 1. Message Reception
[1066] A user sends a question or information using a messaging application (e.g., LINE). The device (user's smartphone) receives this message and forwards it to the server.
[1067] 2. Natural Language Processing
[1068] The server analyzes the received message using a natural language processor. For example, if the message is "What smartphone do you recommend?", the system will extract keywords such as "recommended" and "smartphone."
[1069] 3. Emotion recognition
[1070] The server sends the message to the emotion recognition unit, and the emotion engine analyzes the user's emotion from the message, for example, determining whether the user is angry or depressed.
[1071] 4. Generating Search Queries
[1072] Based on the extracted keywords and the recognized emotions, the server generates search queries such as "recommended smartphones 2023" and adjusts the query depending on the emotions.
[1073] 5. Perform a search
[1074] The server sends the generated search query to a search engine's API, for example, the Google Search API, and receives search results from the API.
[1075] 6. Analysis of search results
[1076] The server receives search results from the search engine API, filters the top search results, and selects the most important information.
[1077] 7. Generating the Response
[1078] Based on the selected information, a large-scale language model (e.g., GPT-4) is used to generate natural-spoken responses. The tone and style of the response are adjusted based on emotion recognition results. For example, if the user is angry, a calm and polite tone is used.
[1079] 8. Advertisement Selection
[1080] An ad auction is conducted based on keywords related to the response (in this case, "smartphone" or "iPhone 14"). The server selects the advertiser who made the highest bid and obtains their ad information.
[1081] 9. Sending the final message
[1082] The server then creates a final response message by including the advertising information in the generated response message. For example, it might say, "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. For more information, click here: [advertising URL]." This is then sent to the user.
[1083] Specific examples
[1084] Consider the case where a user sends a message asking, "What are the popular smartphones these days?" The device sends this message to the server, where the server's natural language processing unit extracts keywords such as "recent," "popular," and "smartphone." At the same time, the emotion recognition unit analyzes the user's emotions and determines, for example, that the user is expressing "interest." The search query generation unit creates a query such as "popular smartphones 2023," and the search execution unit sends the query to the search engine API. From the returned search results, information such as "2023 popular smartphone rankings" is converted into a natural-sounding response using a large-scale language model. An advertising auction is then conducted based on related keywords, and the highest-priced advertisement is included in the final message and sent to the user. This series of processes allows the user to quickly obtain useful information and also provides relevant advertisements.
[1085] The processing flow will be explained below.
[1086] Step 1:
[1087] A user uses the LINE app to send a question or piece of information. For example, they type a message like "What are the most popular smartphones these days?" and press the send button.
[1088] Step 2:
[1089] The device sends the user's message to the LINE server, where it encrypts the message and transfers it according to the LINE protocol.
[1090] Step 3:
[1091] The LINE server receives the message and forwards it to the appropriate intermediate server, which then prepares to analyze the message content.
[1092] Step 4:
[1093] The server sends the message to the natural language processing unit, which then analyzes the message. For example, it extracts keywords such as "recommended" and "smartphone."
[1094] Step 5:
[1095] The server sends the message to the emotion recognition unit, and the emotion engine analyzes the user's emotion from the message. For example, the emotion engine recognizes emotions such as "interest" or "joy" from the user's context.
[1096] Step 6:
[1097] The server generates a search query based on the preprocessed information and the emotion recognition results. For example, if it recognizes that the user is expressing "interest," it generates the search query "Recommended popular smartphones 2023."
[1098] Step 7:
[1099] The server generates a search query and sends it to a search engine API. In this example, the query is sent to the Google Search API, and search results are received from the API.
[1100] Step 8:
[1101] The server receives search results from the search engine API. It filters the top search results and selects important information, such as "Recommended Smartphones for 2023."
[1102] Step 9:
[1103] The server then inputs the selected search results into a large-scale language model to generate natural, colloquial responses, such as "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6."
[1104] Step 10:
[1105] The server then re-analyzes the keywords associated with the response message to extract key keywords, such as "smartphone," "iPhone 14," and "Google Pixel 6."
[1106] Step 11:
[1107] The server conducts an advertising auction based on the extracted keywords, evaluates bids from advertisers, and selects the advertiser with the highest bid.
[1108] Step 12:
[1109] The server then incorporates the selected advertising information and URL into the final response message, such as "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. For more information, click here: [advertising URL]."
[1110] Step 13:
[1111] The server sends a final response message to the LINE server, which delivers the message to the user.
[1112] Step 14:
[1113] The device receives the message from the LINE server and displays it on the chat screen. The user sees a message that reads, "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. For more information, click here: [ad URL]."
[1114] Example 2
[1115] 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."
[1116] When users of messaging applications search for information or ask questions, they need to automate the process and provide relevant information and advertisements quickly and accurately. They also need to create responses that reflect the user's emotional state to improve the user experience.
[1117] 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.
[1118] In this invention, the server includes: means for receiving a message sent by a user; means for analyzing the message using natural language processing means and generating an inquiry query; means for recognizing emotions from the message; means for generating a search query based on the inquiry query and the emotion recognition results; means for sending the search query to an API of an information search engine; means for obtaining search results from the API; means for analyzing the obtained search results and converting the top results into natural responses using a large-scale language model; means for extracting keywords related to the response; means for conducting an advertising auction; means for selecting the advertisement of the highest bidder and including it in a final response message; and means for sending the final response message to the user. This allows users to receive information and advertisements quickly and with high relevance. Furthermore, appropriate responses can be provided according to the user's emotions, improving the user experience.
[1119] The "means for receiving messages sent by a user" refers to a device or system that has the function of receiving messages sent by a user through a message application and transferring the messages to a server.
[1120] "Natural language processing means" refers to a means for analyzing text data and extracting important keywords and intent, and involves processing including morphological analysis and semantic analysis.
[1121] The "means for recognizing emotions" is a technology that has the function of analyzing the user's emotions from the received message and determines the user's emotional state (for example, interest, joy, anger, etc.).
[1122] The "means for generating a search query" refers to a device or system that has the function of creating an appropriate search query based on the extracted keywords and the recognized sentiment.
[1123] "Means for sending to the API of the information search engine" refers to a device or system that has the function of sending a request to the API of the information search engine using the generated search query and obtaining search results.
[1124] "Means for obtaining search results" refers to a device or system that has the function of receiving search results returned from the API of an information search engine and obtaining the necessary data.
[1125] "Means for analyzing search results" refers to the technology for analyzing the search results obtained, selecting the top results, and extracting the necessary information.
[1126] A "large-scale language model" is a model that uses machine learning algorithms to learn from large amounts of text data and generate text that sounds natural and human-like.
[1127] The "means for converting into a natural response" refers to a device or system that has the function of generating a response in natural language that is easy for the user to understand, based on the analyzed search results.
[1128] The "means for conducting an advertisement auction" is a technique for conducting an advertisement auction based on keywords related to the generated response message and selecting the advertisement of the highest bidder.
[1129] The "means for selecting the advertisement of the highest bidder" refers to a device or system that has the function of selecting the advertisement of the advertiser who made the highest bid based on the results of the advertising auction and acquiring information about it.
[1130] The "means for transmitting a final response message to a user" refers to a device or system having a function for including an advertisement in the generated response message and transmitting it to the user as a final message.
[1131] The present invention provides a system for automating the process of searching for information or asking a question through a messaging application, and providing highly relevant information and advertisements. Specific embodiments of the system are described below.
[1132] Hardware and software used
[1133] The system uses the following hardware and software:
[1134] Device: A device that runs a messaging application, such as a user's smartphone or tablet.
[1135] Server: A computer system that receives messages, processes natural language, recognizes emotions, generates search queries, communicates with information search engine APIs, analyzes search results, generates responses, selects advertisements, and finally sends messages.
[1136] Natural language processing software: For morphological and semantic analysis of text data, we use, for example, spaCy, a Python NLP software.
[1137] Emotion recognition engine: To analyze the user's emotions, for example, use the Emotion API from Microsoft Azure's Cognitive Services.
[1138] Information Search Engine APIs: Search for information using search engine APIs such as the Google Custom Search API.
[1139] Large-scale language models: Models using machine learning algorithms, such as GPT-4.
[1140] Advertising auction system: A system for conducting advertising auctions using the Google Ads API, etc.
[1141] System Operation
[1142] Message Reception
[1143] A user uses a messaging application (e.g., LINE) to send a message such as, "What are the most popular smartphones these days?" The device receives this message and forwards it to the server. At this time, the device sends the message data to the server via the Internet.
[1144] Natural Language Processing
[1145] The server analyzes the received messages using natural language processing to extract important keywords such as "recent," "popular," and "smartphone." Specifically, it uses spaCy, a Python NLP software, to perform morphological analysis.
[1146] emotion recognition
[1147] The server sends the message to an emotion recognition unit and analyzes the user's emotions. For example, it uses the Emotion API from Microsoft Azure's Cognitive Services, an API dedicated to emotion analysis, to determine whether the message shows interest.
[1148] Generating a search query
[1149] The server generates a search query based on the extracted keywords and the emotion recognition results. The generated query will be in the form of "Popular smartphones 2023." If the emotion recognition result is "interest," the query will be adjusted to "Recommended popular smartphones 2023."
[1150] Performing a Search
[1151] The server sends the generated search query to the Google Search API to retrieve search results. Specifically, it sends the query to the Google Custom Search API using an HTTP request.
[1152] Parsing search results
[1153] The server receives search results from the Google Search API and filters the top results to select the most important information, using HTML parsing tools such as BeautifulSoup.
[1154] Generating a response
[1155] Based on the selected information, the server uses a large-scale language model (e.g., GPT-4) to generate a natural, colloquial response, such as, "Popular smartphones in 2023 are the iPhone 14 and Google Pixel 6."
[1156] Ad selection
[1157] The server will then use keywords related to the response message to conduct an ad auction, such as "smartphone" or "iPhone 14," using the Google Ads API to select the highest bidder's ad.
[1158] Sending the final message
[1159] The server combines the generated response message with the advertising information to create a final message, which is then sent to the device and presented to the user. For example, a message such as "Popular smartphones in 2023 will be the iPhone 14 and Google Pixel 6. For more information, click here: [advertising URL]" could be sent to the device.
[1160] Specific examples
[1161] If a user sends a message asking "What are the most popular smartphones these days?", the following happens:
[1162] 1. The device forwards the message to the server.
[1163] 2. The server analyzes the message and extracts the keywords "recent," "popular," and "smartphone."
[1164] 3. The server uses an emotion engine to analyze whether the person is showing "interest."
[1165] 4. The server generates the search query "popular smartphones 2023."
[1166] 5. The server sends a query to the Google Search API and retrieves the search results.
[1167] 6. The server selects important information and extracts key smartphone information.
[1168] 7. The server uses GPT-4 to generate a response such as, "Popular smartphones in 2023 will be the iPhone 14 and Google Pixel 6."
[1169] 8. The server conducts an advertising auction for "smartphones" and selects the advertisement from the highest bidder.
[1170] 9. The server sends the final message to the device, which then displays the message to the user: "Popular smartphones in 2023 will be the iPhone 14 and Google Pixel 6. Learn more: [ad URL]."
[1171] Example prompts for generative AI models
[1172] "Write a code that uses emotion recognition to determine that a user is interested in the question 'What are the popular smartphones these days?' and then uses the Google Search API to provide a ranking of the most popular smartphones for 2023."
[1173] This prompt can be used as input for a generative AI model to generate accurate code and explanations.
[1174] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1175] Step 1: Receiving a message
[1176] A user sends a message using a messaging application asking, "What are the popular smartphones these days?"
[1177] Input: User message: "What are the popular smartphones these days?"
[1178] The terminal receives this message and forwards it to a server over the Internet.
[1179] Output: Message data transferred to the server
[1180] Step 2: Natural Language Processing
[1181] The server analyzes the received message using natural language processing means.
[1182] Input: Message data transferred to the server
[1183] Specifically, morphological analysis is performed using spaCy, a Python NLP software, to extract important keywords such as "recent," "popular," and "smartphone."
[1184] Output: Extracted keywords "recent", "popular", "smartphone"
[1185] Step 3: Emotion Recognition
[1186] The server sends the message to the emotion engine, which analyzes the user's emotions.
[1187] Input: Message data transferred to the server
[1188] For example, the Emotion API of Microsoft Azure's Cognitive Services can be used to determine whether the message content shows interest.
[1189] Output: Determined emotion "interest"
[1190] Step 4: Generating a search query
[1191] The server generates a search query based on the extracted keywords and emotion recognition results.
[1192] Input: Extracted keywords "recent", "popular", "smartphone", determined emotion "interest"
[1193] The generated query will be "Popular smartphones 2023." If the emotion recognition result is "interest," the query will be adjusted to "Popular smartphone recommendations 2023."
[1194] Output: Generated search query "Popular smartphone recommendations 2023"
[1195] Step 5: Perform a search
[1196] The server generates a search query and sends it to an information search engine API to retrieve search results.
[1197] Input: Generated search query "Popular smartphone recommendations 2023"
[1198] Specifically, an HTTP request is used to send a query to an information search engine's API (e.g., Google Custom Search API).
[1199] Output: Search results returned from the search engine API
[1200] Step 6: Parse the search results
[1201] The server receives and analyzes search results obtained from the search engine API.
[1202] Input: Search results returned from the search engine API
[1203] Use an HTML parsing tool like BeautifulSoup to filter the top search results and select the important information.
[1204] Output: Selected important information
[1205] Step 7: Generate a response
[1206] The server uses a large-scale language model to generate natural responses based on the selected information.
[1207] Input: Selected important information
[1208] Here, GPT-4 is used to generate natural, colloquial responses such as, "Popular smartphones in 2023 will be the iPhone 14 and Google Pixel 6."
[1209] Output: A natural response message is generated.
[1210] Step 8: Ad selection
[1211] The server conducts an advertisement auction using keywords associated with the response message.
[1212] Input: Keywords related to the generated natural response message, such as "smartphone" or "iPhone 14"
[1213] For example, use the Google Ads API to select ads from the highest bidders.
[1214] Output: Selected advertising information
[1215] Step 9: Sending the final message
[1216] The server generates a response message and combines it with the advertising information to create a final message.
[1217] Input: Generated natural response message, selected advertising information
[1218] This is sent to the device and presented to the user. For example, a message such as "Popular smartphones in 2023 will be the iPhone 14 and Google Pixel 6. For more information, click here: [advertising URL]" is sent to the device.
[1219] Output: The final message presented to the user
[1220] (Application example 2)
[1221] 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."
[1222] In traditional food delivery systems, users have to spend a lot of time searching for the right menu or restaurant, and the system does not provide suggestions or responses that take into account the user's emotions and moods. Furthermore, relevant advertisements do not necessarily match the user's interests and needs, which does not improve the user experience. This leads to dissatisfaction for users.
[1223] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[1224] In this invention, the server includes means for receiving a message sent by a user, means for analyzing the message using natural language processing means and generating a search query, means for recognizing emotions from the message, means for sending the search query to a search engine API, means for obtaining search results from the API, means for analyzing the obtained search results and converting top results into colloquial responses using a large-scale language model, means for adjusting the tone and style of the response based on the emotions, means for extracting keywords related to the response and conducting an advertising auction, means for selecting an advertisement from the highest bidder and including it in a final response message, and means for sending the final response message to the user. This enables the presentation of flexible and personalized responses and related advertisements that take into account the user's emotions.
[1225] "User" refers to a person who uses the food delivery system.
[1226] "Message" means a text-based communication sent by a User to the System.
[1227] "Natural language processing" refers to the technology of analyzing messages and extracting keywords and intent.
[1228] "Search query" means a string of characters generated to specify an information request to a search engine.
[1229] "Emotion recognition" refers to the process of analyzing and recognizing a user's emotional state from a message.
[1230] "Search Engine API" refers to an application program interface used for external information searches.
[1231] "Search Results" refers to the information returned by a search engine based on a search query.
[1232] A "large-scale language model" refers to a natural language processing model that is trained using a very large amount of text data.
[1233] "Adjusting tone and style" refers to the process of changing the way a response is phrased based on the user's feelings.
[1234] An "ad auction" refers to the process in which multiple advertisers compete to acquire advertising space.
[1235] "Final response message" refers to a message containing the response result and related advertisements that the system provides to the user.
[1236] This invention is designed to automatically provide personalized suggestions and advertisements based on user sentiment in a specific food delivery system. The system consists of the following components:
[1237] Specific system configuration
[1238] 1. User message receiving section
[1239] A user sends a message to the system using their own device (e.g., a smartphone). This message is received by the server. For example, suppose a user asks, "Do you have any lunch recommendations?"
[1240] 2. Natural Language Processing Unit
[1241] The received message is analyzed. Natural language processing technology is used to extract important keywords and phrases. For example, keywords such as "recommended" and "lunch" are analyzed to grasp the main points. Hugging Face's natural language processing model (e.g., GPT-4) is used here.
[1242] 3. Emotion recognition section
[1243] The system recognizes the user's emotions from the content of the message. Using an emotion recognition API, it analyzes the user's emotions, such as whether they are feeling stressed or happy. For example, if a user sends a message saying, "I've been feeling stressed lately," the system analyzes their emotional state.
[1244] 4. Search query generation and search execution
[1245] Based on the extracted keywords and the recognized sentiment, a search query is generated, such as "recommended lunch to relieve stress," and sent to the search engine's API, through which related information is retrieved.
[1246] 5. Result Analysis and Response Generation
[1247] The search results are received and converted into a colloquial response using a large-scale language model. Based on the information obtained, a response message is generated in a tone and style that reflects the emotion. For example, a response could be constructed in the form of "An acai bowl is a recommended lunch that will help relieve stress."
[1248] 6. Advertising Selection Department
[1249] Keywords related to the response are extracted and an ad auction is held. The ad from the highest bidder is selected and included in the final response message. For example, a message containing "Advertisement for Specialty Acai Bowls" is generated.
[1250] 7. Message sending part
[1251] A final response message is sent to the user, which contains a personalized answer to the user's question along with a relevant advertisement.
[1252] Hardware and software used
[1253] Server: Runs on a high-performance cloud service (e.g., AWS, Google Cloud Platform).
[1254] Natural language processing models: Use large-scale language models such as Hugging Face's "GPT-4."
[1255] Emotion Recognition API: Use emotion management services such as the Emotion Recognition API.
[1256] Search Engine API: Using Google Search API as an example.
[1257] Advertising API: Use a dedicated advertising API to conduct ad auctions.
[1258] Examples of specific examples and prompts
[1259] Examples:
[1260] Suppose a user sends a message saying, "I've been feeling stressed lately. Do you have any lunch recommendations?" The server receives this message, and the natural language processing unit extracts "recommended" and "lunch" as keywords. The emotion recognition unit recognizes the sense of stress and generates the search query "recommended lunch stress relief." Information from the search results, such as "acai bowl," is converted into a colloquial response using a large-scale language model. The advertisement selection unit adds the related "ad for special acai bowls," generates a final response message, and sends it to the user.
[1261] Example prompt sentence:
[1262] When a user asks, "I've been feeling stressed lately, do you have any lunch recommendations?" generate a response with relaxing food suggestions and relevant ads.
[1263] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1264] Step 1:
[1265] The server receives the message sent by the user.
[1266] Input: A message sent by the user from their device (e.g., "Do you have any lunch recommendations?").
[1267] Processing: The message receiver receives the message and passes the data to the next process.
[1268] Output: The received user message (text data) is obtained as output.
[1269] Step 2:
[1270] The server analyzes the received message using a natural language processor.
[1271] Input: The user message received in step 1.
[1272] Processing: Using natural language processing techniques (e.g., GPT-4), we extract important keywords and phrases from the message. In this example, we analyze keywords such as "recommendation" and "lunch."
[1273] Output: The extracted keywords and phrases are obtained as output.
[1274] Step 3:
[1275] The server recognizes the emotion from the message.
[1276] Input: The user message received in step 1.
[1277] Processing: Using emotion recognition API, analyze the user's emotion from the message. For example, recognize the emotional state of the user, such as "the user is feeling stressed."
[1278] Output: The recognized emotion information is obtained as the output.
[1279] Step 4:
[1280] The server generates a search query based on the extracted keywords and the recognized sentiment and sends it to the search engine's API.
[1281] Input: Keywords extracted in step 2 ("recommended", "lunch") and emotion information recognized in step 3 ("stress").
[1282] Processing: Generate a search query such as "recommended lunches to relieve stress" and send it to the search engine's API.
[1283] Output: The output is the search query sent to the search API.
[1284] Step 5:
[1285] The server retrieves search results from the search engine's API.
[1286] Input: The search query generated in step 4.
[1287] Process: Receive search results returned by the search engine API.
[1288] Output: The search result data is obtained as output.
[1289] Step 6:
[1290] The server analyzes the search results and converts them into colloquial responses using a large-scale language model.
[1291] Input: Search result data obtained in step 5.
[1292] Processing: Using a large-scale language model (such as GPT-4), we select important information from the search results and generate a colloquial response message that is easy for the user to understand. We adjust the tone and style of the response based on emotion recognition results.
[1293] Output: The output is the generated colloquial response message.
[1294] Step 7:
[1295] The server extracts keywords associated with the responses and conducts an advertisement auction.
[1296] Input: The relevant keywords for the response message generated in step 6.
[1297] Processing: Based on the extracted keywords (e.g., "lunch" or "acai bowl"), an ad auction is conducted using the advertising API, and the ad of the advertiser who made the highest bid is selected.
[1298] Output: The selected advertising data is obtained as output.
[1299] Step 8:
[1300] The server generates a final response message and sends it to the user.
[1301] Input: The response message generated in step 6 and the advertising data selected in step 7.
[1302] Processing: The response message includes the advertisement and is sent securely and quickly to the user's device. For example, it may contain something like, "Our recommended lunch for stress relief is an acai bowl. For more information on our specialty acai bowls, click here: [ad URL]."
[1303] Output: The output is the final response message sent to the user.
[1304] 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.
[1305] 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.
[1306] 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.
[1307] [Fourth embodiment]
[1308] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[1309] 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.
[1310] 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).
[1311] 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.
[1312] 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.
[1313] 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).
[1314] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[1315] 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.
[1316] 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.
[1317] 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.
[1318] 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.
[1319] 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.
[1320] 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."
[1321] The present invention is a system that automates the process of searching for information or asking questions through messaging applications and improves the user experience by displaying relevant advertisements.
[1322] System configuration
[1323] The system mainly includes the following elements:
[1324] 1. Message Receiving Unit - Receives messages sent by users.
[1325] 2. Natural Language Processing Unit - Analyzes received messages and extracts important keywords and intent.
[1326] 3. Search query generation section - Generates appropriate search queries based on the extracted keywords and intent.
[1327] 4. Search execution unit - Sends the search query to the search engine's API and retrieves the search results.
[1328] 5. Result analysis section - Analyzes the search results and selects important information.
[1329] 6. Response Generation - Generates natural-sounding responses using a large-scale language model based on the selected information.
[1330] 7. Advertisement Selection Unit - Conducts an ad auction based on keywords related to the response and selects the advertisement with the highest bidder.
[1331] 8. Message sending section - Include the advertisement in the final response message and send it to the user.
[1332] Program processing
[1333] The processing of each part proceeds as follows:
[1334] 1. Message Reception
[1335] A user sends a question or information using a messaging application (e.g., LINE). The device (user's smartphone) receives this message and forwards it to the server.
[1336] 2. Natural Language Processing
[1337] The server analyzes the message it receives with its natural language processor. For example, if a user sends a message asking, "What smartphone do you recommend this year?", the natural language processor will extract keywords such as "this year," "recommended," and "smartphone."
[1338] 3. Generating search queries
[1339] Based on the extracted keywords, the server generates search queries such as "recommended smartphones 2023."
[1340] 4. Perform a search
[1341] The server then sends the generated search query to the API of a search engine (e.g., Google Search), which returns search results that match the query.
[1342] 5. Analysis of search results
[1343] The server receives the search results and selects the top information from them, such as "Smartphone Rankings 2023" or "Recommended Smartphone Models."
[1344] 6. Generating the Response
[1345] Based on the selected information, a large-scale language model (e.g., GPT-4) is used to generate natural, colloquial responses, such as "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6."
[1346] 7. Advertisement Selection
[1347] An ad auction is conducted based on keywords related to the response (in this case, "smartphone" or "iPhone 14"). The server selects the advertiser who made the highest bid and obtains their ad information.
[1348] 8. Sending the final message
[1349] The server then creates a final response message by including the advertising information in the generated response message. For example, the message might read, "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. For more information, click here: [advertising URL]." This is then sent to the user.
[1350] Specific examples
[1351] Consider the case where a user sends a message asking, "What are the popular smartphones these days?" The device sends this message to the server, and the server's natural language processing unit extracts the keywords "recent," "popular," and "smartphone." The search query generation unit creates a query such as "popular smartphones 2023," and the search execution unit sends the query to the search engine API. From the returned search results, information such as "2023 popular smartphone rankings" is converted into a natural response using a large-scale language model. An advertising auction is then conducted based on the related keywords, and the highest-priced advertisement is included in the final message and sent to the user. This series of processes allows the user to quickly obtain useful information and also provides relevant advertisements.
[1352] The processing flow will be explained below.
[1353] Step 1:
[1354] A user sends a question or piece of information using the LINE app. For example, they type a message like "What smartphone do you recommend?" and press the send button.
[1355] Step 2:
[1356] The device sends the user's message to the LINE server, where it encrypts the message and transfers it according to the LINE protocol.
[1357] Step 3:
[1358] The LINE server receives the message and forwards it to the appropriate intermediate server, which then prepares to analyze the message content.
[1359] Step 4:
[1360] The server sends the message to the natural language processing unit, which then analyzes the message. For example, it extracts keywords such as "recommended," "smartphone," and "what."
[1361] Step 5:
[1362] The server generates a search query based on the preprocessed information. Specifically, it creates a search query such as "recommended smartphones 2023" based on the results of the natural language processing unit.
[1363] Step 6:
[1364] The server sends the search query to a search engine API, for example, the Google Search API, and receives the search results from the API.
[1365] Step 7:
[1366] The server receives search results from the search engine API, filters the top search results, and selects the most important information.
[1367] Step 8:
[1368] The server then inputs the selected search results into a large-scale language model to generate natural, colloquial responses, such as "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6."
[1369] Step 9:
[1370] The server then re-analyzes the keywords associated with the response message, extracting advertising keywords such as "smartphone," "iPhone 14," and "Google Pixel 6."
[1371] Step 10:
[1372] The server conducts an advertising auction based on the extracted keywords, evaluates bids from advertisers, and selects the advertiser with the highest bid.
[1373] Step 11:
[1374] The server then incorporates the selected advertising information and URL into the final response message, such as "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. For more information, click here: [advertising URL]."
[1375] Step 12:
[1376] The server sends a final response message to the LINE server, which delivers the message to the user.
[1377] Step 13:
[1378] The device receives the message from the LINE server and displays it on the chat screen. The user sees a message that reads, "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. For more information, click here: [ad URL]."
[1379] Example 1
[1380] 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."
[1381] Conventional search systems and information provision systems have difficulty in quickly providing appropriate information in response to user questions and requests. Furthermore, they lack a means to effectively display relevant advertisements, making it difficult for advertisers to display their advertisements at the optimal time. As a result, there is a demand for a means to improve user satisfaction.
[1382] 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.
[1383] In this invention, the server includes means for receiving a message sent by a user, means for analyzing the message using natural language processing means and extracting important keywords and intent, means for generating an appropriate search query based on the extracted keywords and intent, means for sending the search query to a search engine interface, means for obtaining search results from the interface, means for analyzing the obtained search results, selecting top results, and converting them into a natural language response using a large-scale language model, means for conducting an advertising auction based on keywords related to the response, means for selecting an advertisement from the highest bidder and including it in a final response message, and means for sending the final response message to the user. This allows users to obtain useful information specifically and quickly, and related advertisements are also displayed effectively, thereby improving the user experience.
[1384] "User" means any person or entity that uses the System to search for information or ask a question.
[1385] A "Message" is a text communication sent by a User to ask a question or request information.
[1386] A "server" is a computer system that receives a user's message, analyzes it, and generates a response.
[1387] "Natural language processing means" is a collection of technologies and methods that analyze messages and extract important keywords and intentions.
[1388] "Keywords" are words or phrases that are considered particularly important in a message.
[1389] "Intent" refers to the purpose or question the user is trying to achieve through the message.
[1390] A "search query" is a syntax that represents search criteria sent to a search engine.
[1391] A "search engine interface" is a programmatic boundary through which external systems can send queries to a search engine and receive results.
[1392] A "search result" is a collection of information or data returned by a search engine in response to a search query.
[1393] "Result analysis means" refers to a collection of techniques and methods for analyzing the search results and selecting important information.
[1394] A "large-scale language model" is an artificial intelligence model that learns from massive amounts of text data to generate and understand natural language.
[1395] A "natural language response" is text generated based on acquired and analyzed information to communicate it to the user in an easy-to-understand manner.
[1396] An "ad auction" is a process in which advertisers compete for keywords and determine the placement of their ads based on the highest bid.
[1397] A "high bidder" is an advertiser who bids the highest amount in an advertising auction.
[1398] A "final response message" is a message sent to a user that includes a response message and related advertisements.
[1399] "Transmission means" refers to a collection of technologies and methods for delivering messages generated by the server to users.
[1400] This invention is a system that automates the process of searching for information or asking questions through a messaging application and displays relevant advertisements. The system is implemented by combining multiple software components and hardware resources.
[1401] First, a user opens a messaging application (e.g., a messaging app) on a device such as a smartphone or computer. The user types and sends a message with a question or request for information. The device receives the message and forwards it to the server.
[1402] Next, the server passes the received message to a natural language processing means. This processing is performed using a natural language processing model (for example, a morphological analyzer or semantic analyzer). At this stage, important keywords and the user's intention are extracted from the message. For example, if a user sends a message asking, "What smartphone do you recommend this year?", the server will extract keywords such as "this year," "recommended," and "smartphone."
[1403] Based on the extracted keywords, the server calls the search query generator to generate an appropriate search query. The search query is based on the user's intent and is generated in the form of "recommended smartphones 2023." This query is then sent to the search engine interface, for example, to the search engine API (search engine program interface). The API provides search results that match the query.
[1404] The server receives search results from the search engine API and analyzes them using a result analysis method. The top results are selected, such as "Smartphone Rankings 2023" or "Recommended Smartphone Models." The selected information is then passed to a response generator, which uses a large-scale language model (e.g., GPT-4) to generate a natural, colloquial response. For example, a response such as "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6" is generated.
[1405] After generating the response, the server conducts an ad auction using keywords related to the response. The advertiser with the highest bid based on the keywords included in the response (e.g., "smartphone" or "iPhone 14") is selected. The selected advertiser's ad is included in the final response message. The final message might look something like this: "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. Learn more: [ad URL]."
[1406] The final response message will be sent from the server to the user's device and displayed to the user. This system allows users to obtain quick and useful information and also displays relevant advertisements, improving the user experience.
[1407] Specific examples
[1408] Consider the case where a user sends a message asking, "What are the popular smartphones these days?" The device sends this message to the server, and the server's natural language processing unit extracts the keywords "recent," "popular," and "smartphone." The search query generation unit creates a query such as "popular smartphones 2023," and the search execution unit sends the query to the search engine API. From the returned search results, information such as "2023 popular smartphone rankings" is converted into a natural response using a large-scale language model. An advertising auction is then conducted based on the related keywords, and the highest-priced advertisement is included in the final message and sent to the user.
[1409] Prompt Sentence Examples
[1410] Please tell me about the latest popular smartphones.
[1411] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1412] Step 1:
[1413] A user opens a messaging application and types a message, such as a question or a request for information. The user taps the send button, and the device receives the message. The device then forwards this message to a server. The input is the text message typed by the user, and the output is the message data sent to the server.
[1414] Step 2:
[1415] The server passes the received message to the natural language processor, which analyzes the message and extracts important keywords and intent. For example, the keywords "recent," "popular," and "smartphone" are extracted from the message "What are the popular smartphones these days?" The input is the received message text, and the output is a list of extracted keywords.
[1416] Step 3:
[1417] Based on the extracted keywords, the server calls the search query generator to generate an appropriate search query. The generated search query will be in the format of "Popular smartphones 2023." The input is a list of extracted keywords, and the output is the generated search query.
[1418] Step 4:
[1419] The server sends the generated search query to a search engine interface, for example, the search query is sent as an HTTP request to a search engine API. The input is the generated search query, and the output is the search result data from the search engine API.
[1420] Step 5:
[1421] The server receives the search results and passes them to the result analysis unit. The result analysis unit analyzes the search results and selects the top results. For example, information such as "Popular smartphone rankings for 2023" or "Recommended smartphone models" is selected. The input is the search result data, and the output is a list of the selected information.
[1422] Step 6:
[1423] The server passes the selected information to the response generator, which uses a large-scale language model (e.g., GPT-4) to generate a natural, colloquial response based on the selected information. For example, it generates a response such as, "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6." The input is a list of selected information, and the output is the generated response message.
[1424] Step 7:
[1425] The server conducts an advertising auction using keywords related to the content of the generated response message. The advertiser who submitted the highest bid based on the keywords included in the response (e.g., "smartphone" or "iPhone 14") is selected. The input is the keywords related to the generated response message, and the output is the selected advertising information.
[1426] Step 8:
[1427] The server generates a final response message that includes the selected advertising information. For example, it creates a message in the format "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. For more information, click here: [advertising URL]." The input is the generated response message and advertising information, and the output is the final message. The server sends this final message to the user's device, which receives it and displays it to the user.
[1428] (Application example 1)
[1429] 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."
[1430] In conventional messaging applications, users had to perform many manual operations when searching for information, and search results were only displayed directly, without effectively delivering relevant advertisements. Furthermore, the accuracy of natural language understanding was low, making it difficult to accurately grasp user intent. This resulted in a poor user experience and insufficient advertising effectiveness.
[1431] 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.
[1432] In this invention, the server includes means for receiving a message sent by a user, means for analyzing the message using natural language processing means and generating a search query, means for sending the search query to an API of a search engine, means for obtaining search results from the API, means for analyzing the obtained search results and converting top results into colloquial responses using a large-scale language model, means for extracting keywords related to the responses and conducting an advertisement auction, means for selecting an advertisement from a high bidder and including it in a final response message, means for sending the final response message to the user, and means for providing the generated response message and advertisement together to the user. This enables users to not only efficiently search for information but also simultaneously receive highly relevant advertisements.
[1433] "User" means any person or entity that uses the System to search for information and receive response messages.
[1434] "Message" refers to the text or voice data that a user enters and sends to the system to search for information.
[1435] "Natural language processing means" refers to technology that analyzes messages sent by users and extracts important keywords and the user's intentions.
[1436] A "search query" refers to a search phrase or sentence generated based on keywords and intent extracted by natural language processing means.
[1437] "Search Engine API" means an application programming interface that provides an interface for submitting search queries to and retrieving results from an external search engine.
[1438] "Search results" refers to a list of information obtained from a search engine's API.
[1439] A "large-scale language model" is a model that uses machine learning algorithms generated by learning from massive amounts of text data, and is used to convert search results into natural, colloquial language.
[1440] An "ad auction" refers to the process by which advertisers bid based on keywords related to search results or responses, and the highest bidder's ad is selected.
[1441] "Final Response Message" means a message that includes a response message generated based on the search results and a selected advertisement.
[1442] The "means for providing the generated response message and advertisement to the user together" refers to a technology for transmitting the response message and the related advertisement to the user as a single message.
[1443] This invention is a system that automates the process of searching for information through a messaging application and displays relevant advertisements. This system consists of the following components:
[1444] First, the user sends a message from a device (e.g., a smartphone). The server receives this message and moves on to the next process.
[1445] The server analyzes the received message using natural language processing means. This natural language processing means includes software that analyzes text and voice. For example, the natural language processing library Transformers provided by Hugging Face can be used. In this example, if a user sends a message saying, "What is the most popular smartphone right now?", the natural language processing means will extract keywords such as "most popular right now" and "smartphone."
[1446] The server then generates a search query based on these keywords, such as "popular smartphones," and sends the generated search query to a search engine's API, which could be the Google Search API or another generic search engine API.
[1447] The server receives search results from the search engine's API, analyzes them, and selects the top results that are most relevant to the user's information needs.
[1448] The server then converts these top search results into natural-sounding responses using a large-scale language model, which can employ machine learning algorithms like OpenAI's GPT-4. For example, it might generate a response like, "The most popular smartphones right now are the iPhone 14 and the Google Pixel 6, and by 2023, they will be popular."
[1449] The server then extracts keywords related to the response and proceeds to conduct an ad auction. The auction selects the ad from the highest bidder and includes it in the response. For example, the message might read, "Currently, the most popular smartphones are the iPhone 14 and Google Pixel 6, and by 2023, they will be popular. Learn more here: [ad URL]."
[1450] Finally, the server sends this final response message to the user's device, allowing the user to quickly obtain the desired information and receive related advertisements at the same time.
[1451] For illustrative purposes, consider the following prompt:
[1452] What is the most popular smartphone right now?
[1453] "What are your recommended summer travel destinations?"
[1454] "I want to know more about the latest tablets."
[1455] The above is an embodiment of the invention, which allows users to efficiently search for the information they are looking for and display relevant advertisements, and also enables advertisers to carry out effective marketing.
[1456] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1457] Step 1:
[1458] The user uses the device to send a message to search for information through a messaging application, for example, by typing "Tell me about the latest smartphones."
[1459] Step 2:
[1460] The server receives a message sent from the terminal. This message is passed to the server as text data. The input here is the message sent by the user, and the output is the message content.
[1461] Step 3:
[1462] The server analyzes the received message using natural language processing. Specifically, it uses Hugging Face's Transformers library to analyze the meaning of the message and extract important keywords. The input is the text message, and the output is the extracted keywords. For example, keywords such as "latest" and "smartphone" are extracted.
[1463] Step 4:
[1464] The server generates a search query based on the extracted keywords. The generated search query is converted into a format that can be used as an API request for the search engine. The input is the extracted keywords, and the output is the search query. For example, the format might be "latest smartphone."
[1465] Step 5:
[1466] The server sends the generated search query to a search engine's API, for example using the Google Search API. The input is the search query and the output is the search results returned by the API.
[1467] Step 6:
[1468] The server receives search results obtained from a search engine's API. The received search results include multiple links and summary information. The input is the search results returned by the API, and the output is a list of these search results.
[1469] Step 7:
[1470] The server analyzes the received search results and selects the top relevant results, taking into account metadata such as search ranking and click-through rate. The input is a list of search results, and the output is the selected top results.
[1471] Step 8:
[1472] The server converts the selected search results into natural, colloquial responses using a large-scale language model (e.g., OpenAI's GPT-4). The input is the selected search results, and the output is a response message written in natural language. For example, a response such as "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6" is generated.
[1473] Step 9:
[1474] The server again extracts keywords associated with the response message and conducts an ad auction. It selects the advertisement of the highest bidder and includes it in the response message. The input is the keywords associated with the response message, and the output is the advertisement to be included in the final response message.
[1475] Step 10:
[1476] The server sends the generated response message and the selected advertisement as a single message to the user's device. The input is the final response message and advertisement, and the output is the final message sent to the user's device. For example, it might say, "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. For more information, click here: [Advertisement URL]."
[1477] The above are the specific processing steps for carrying out the present invention, which allow users to quickly obtain effective information and simultaneously provide relevant advertisements.
[1478] 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.
[1479] This system automates the process of searching for information or asking questions through messaging applications and improves the user experience by displaying relevant advertisements. By combining it with an emotion engine, the system recognizes the user's emotions and provides appropriate responses and advertisements based on those emotions.
[1480] System configuration
[1481] The system mainly includes the following elements:
[1482] 1. Message Receiving Unit - Receives messages sent by users.
[1483] 2. Natural Language Processing Unit - Analyzes received messages and extracts important keywords and intent.
[1484] 3. Emotion Recognition Unit - Equipped with an emotion engine that recognizes the user's emotions from the received message.
[1485] 4. Search query generation - Generates appropriate search queries based on extracted keywords, intent, and recognized sentiment.
[1486] 5. Search execution unit - Sends the search query to the search engine's API and retrieves the search results.
[1487] 6. Result analysis section - Analyzes the search results and selects important information.
[1488] 7. Response Generation - Generates natural-sounding, colloquial responses based on selected information using a large-scale language model, adjusting the tone and style of the response based on the perceived sentiment.
[1489] 8. Advertisement Selection Unit - Conducts an ad auction based on keywords related to the response and selects the advertisement with the highest bidder.
[1490] 9. Message sending section - Include the advertisement in the final response message and send it to the user.
[1491] Program processing
[1492] The processing of each part proceeds as follows:
[1493] 1. Message Reception
[1494] A user sends a question or information using a messaging application (e.g., LINE). The device (user's smartphone) receives this message and forwards it to the server.
[1495] 2. Natural Language Processing
[1496] The server analyzes the received message using a natural language processor. For example, if the message is "What smartphone do you recommend?", the system will extract keywords such as "recommended" and "smartphone."
[1497] 3. Emotion recognition
[1498] The server sends the message to the emotion recognition unit, and the emotion engine analyzes the user's emotion from the message, for example, determining whether the user is angry or depressed.
[1499] 4. Generating Search Queries
[1500] Based on the extracted keywords and the recognized emotions, the server generates search queries such as "recommended smartphones 2023" and adjusts the query depending on the emotions.
[1501] 5. Perform a search
[1502] The server sends the generated search query to a search engine's API, for example, the Google Search API, and receives search results from the API.
[1503] 6. Analysis of search results
[1504] The server receives search results from the search engine API, filters the top search results, and selects the most important information.
[1505] 7. Generating the Response
[1506] Based on the selected information, a large-scale language model (e.g., GPT-4) is used to generate natural-spoken responses. The tone and style of the response are adjusted based on emotion recognition results. For example, if the user is angry, a calm and polite tone is used.
[1507] 8. Advertisement Selection
[1508] An ad auction is conducted based on keywords related to the response (in this case, "smartphone" or "iPhone 14"). The server selects the advertiser who made the highest bid and obtains their ad information.
[1509] 9. Sending the final message
[1510] The server then creates a final response message by including the advertising information in the generated response message. For example, it might say, "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. For more information, click here: [advertising URL]." This is then sent to the user.
[1511] Specific examples
[1512] Consider the case where a user sends a message asking, "What are the popular smartphones these days?" The device sends this message to the server, where the server's natural language processing unit extracts keywords such as "recent," "popular," and "smartphone." At the same time, the emotion recognition unit analyzes the user's emotions and determines, for example, that the user is expressing "interest." The search query generation unit creates a query such as "popular smartphones 2023," and the search execution unit sends the query to the search engine API. From the returned search results, information such as "2023 popular smartphone rankings" is converted into a natural-sounding response using a large-scale language model. An advertising auction is then conducted based on related keywords, and the highest-priced advertisement is included in the final message and sent to the user. This series of processes allows the user to quickly obtain useful information and also provides relevant advertisements.
[1513] The processing flow will be explained below.
[1514] Step 1:
[1515] A user uses the LINE app to send a question or piece of information. For example, they type a message like "What are the most popular smartphones these days?" and press the send button.
[1516] Step 2:
[1517] The device sends the user's message to the LINE server, where it encrypts the message and transfers it according to the LINE protocol.
[1518] Step 3:
[1519] The LINE server receives the message and forwards it to the appropriate intermediate server, which then prepares to analyze the message content.
[1520] Step 4:
[1521] The server sends the message to the natural language processing unit, which then analyzes the message. For example, it extracts keywords such as "recommended" and "smartphone."
[1522] Step 5:
[1523] The server sends the message to the emotion recognition unit, and the emotion engine analyzes the user's emotion from the message. For example, the emotion engine recognizes emotions such as "interest" or "joy" from the user's context.
[1524] Step 6:
[1525] The server generates a search query based on the preprocessed information and the emotion recognition results. For example, if it recognizes that the user is expressing "interest," it generates the search query "Recommended popular smartphones 2023."
[1526] Step 7:
[1527] The server generates a search query and sends it to a search engine API. In this example, the query is sent to the Google Search API, and search results are received from the API.
[1528] Step 8:
[1529] The server receives search results from the search engine API. It filters the top search results and selects important information, such as "Recommended Smartphones for 2023."
[1530] Step 9:
[1531] The server then inputs the selected search results into a large-scale language model to generate natural, colloquial responses, such as "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6."
[1532] Step 10:
[1533] The server then re-analyzes the keywords associated with the response message to extract key keywords, such as "smartphone," "iPhone 14," and "Google Pixel 6."
[1534] Step 11:
[1535] The server conducts an advertising auction based on the extracted keywords, evaluates bids from advertisers, and selects the advertiser with the highest bid.
[1536] Step 12:
[1537] The server then incorporates the selected advertising information and URL into the final response message, such as "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. For more information, click here: [advertising URL]."
[1538] Step 13:
[1539] The server sends a final response message to the LINE server, which delivers the message to the user.
[1540] Step 14:
[1541] The device receives the message from the LINE server and displays it on the chat screen. The user sees a message that reads, "Recommended smartphones for 2023 are the iPhone 14 and Google Pixel 6. For more information, click here: [ad URL]."
[1542] Example 2
[1543] 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."
[1544] When users of messaging applications search for information or ask questions, they need to automate the process and provide relevant information and advertisements quickly and accurately. They also need to create responses that reflect the user's emotional state to improve the user experience.
[1545] 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.
[1546] In this invention, the server includes: means for receiving a message sent by a user; means for analyzing the message using natural language processing means and generating an inquiry query; means for recognizing emotions from the message; means for generating a search query based on the inquiry query and the emotion recognition results; means for sending the search query to an API of an information search engine; means for obtaining search results from the API; means for analyzing the obtained search results and converting the top results into natural responses using a large-scale language model; means for extracting keywords related to the response; means for conducting an advertising auction; means for selecting the advertisement of the highest bidder and including it in a final response message; and means for sending the final response message to the user. This allows users to receive information and advertisements quickly and with high relevance. Furthermore, appropriate responses can be provided according to the user's emotions, improving the user experience.
[1547] The "means for receiving messages sent by a user" refers to a device or system that has the function of receiving messages sent by a user through a message application and transferring the messages to a server.
[1548] "Natural language processing means" refers to a means for analyzing text data and extracting important keywords and intent, and involves processing including morphological analysis and semantic analysis.
[1549] The "means for recognizing emotions" is a technology that has the function of analyzing the user's emotions from the received message and determines the user's emotional state (for example, interest, joy, anger, etc.).
[1550] The "means for generating a search query" refers to a device or system that has the function of creating an appropriate search query based on the extracted keywords and the recognized sentiment.
[1551] "Means for sending to the API of the information search engine" refers to a device or system that has the function of sending a request to the API of the information search engine using the generated search query and obtaining search results.
[1552] "Means for obtaining search results" refers to a device or system that has the function of receiving search results returned from the API of an information search engine and obtaining the necessary data.
[1553] "Means for analyzing search results" refers to the technology for analyzing the search results obtained, selecting the top results, and extracting the necessary information.
[1554] A "large-scale language model" is a model that uses machine learning algorithms to learn from large amounts of text data and generate text that sounds natural and human-like.
[1555] The "means for converting into a natural response" refers to a device or system that has the function of generating a response in natural language that is easy for the user to understand, based on the analyzed search results.
[1556] The "means for conducting an advertisement auction" is a technique for conducting an advertisement auction based on keywords related to the generated response message and selecting the advertisement of the highest bidder.
[1557] The "means for selecting the advertisement of the highest bidder" refers to a device or system that has the function of selecting the advertisement of the advertiser who made the highest bid based on the results of the advertising auction and acquiring information about it.
[1558] The "means for transmitting a final response message to a user" refers to a device or system having a function for including an advertisement in the generated response message and transmitting it to the user as a final message.
[1559] The present invention provides a system for automating the process of searching for information or asking a question through a messaging application, and providing highly relevant information and advertisements. Specific embodiments of the system are described below.
[1560] Hardware and software used
[1561] The system uses the following hardware and software:
[1562] Device: A device that runs a messaging application, such as a user's smartphone or tablet.
[1563] Server: A computer system that receives messages, processes natural language, recognizes emotions, generates search queries, communicates with information search engine APIs, analyzes search results, generates responses, selects advertisements, and finally sends messages.
[1564] Natural language processing software: For morphological and semantic analysis of text data, we use, for example, spaCy, a Python NLP software.
[1565] Emotion recognition engine: To analyze the user's emotions, for example, use the Emotion API from Microsoft Azure's Cognitive Services.
[1566] Information Search Engine APIs: Search for information using search engine APIs such as the Google Custom Search API.
[1567] Large-scale language models: Models using machine learning algorithms, such as GPT-4.
[1568] Advertising auction system: A system for conducting advertising auctions using the Google Ads API, etc.
[1569] System Operation
[1570] Message Reception
[1571] A user uses a messaging application (e.g., LINE) to send a message such as, "What are the most popular smartphones these days?" The device receives this message and forwards it to the server. At this time, the device sends the message data to the server via the Internet.
[1572] Natural Language Processing
[1573] The server analyzes the received messages using natural language processing to extract important keywords such as "recent," "popular," and "smartphone." Specifically, it uses spaCy, a Python NLP software, to perform morphological analysis.
[1574] emotion recognition
[1575] The server sends the message to an emotion recognition unit and analyzes the user's emotions. For example, it uses the Emotion API from Microsoft Azure's Cognitive Services, an API dedicated to emotion analysis, to determine whether the message shows interest.
[1576] Generating a search query
[1577] The server generates a search query based on the extracted keywords and the emotion recognition results. The generated query will be in the form of "Popular smartphones 2023." If the emotion recognition result is "interest," the query will be adjusted to "Recommended popular smartphones 2023."
[1578] Performing a Search
[1579] The server sends the generated search query to the Google Search API to retrieve search results. Specifically, it sends the query to the Google Custom Search API using an HTTP request.
[1580] Parsing search results
[1581] The server receives search results from the Google Search API and filters the top results to select the most important information, using HTML parsing tools such as BeautifulSoup.
[1582] Generating a response
[1583] Based on the selected information, the server uses a large-scale language model (e.g., GPT-4) to generate a natural, colloquial response, such as, "Popular smartphones in 2023 are the iPhone 14 and Google Pixel 6."
[1584] Ad selection
[1585] The server will then use keywords related to the response message to conduct an ad auction, such as "smartphone" or "iPhone 14," using the Google Ads API to select the highest bidder's ad.
[1586] Sending the final message
[1587] The server combines the generated response message with the advertising information to create a final message, which is then sent to the device and presented to the user. For example, a message such as "Popular smartphones in 2023 will be the iPhone 14 and Google Pixel 6. For more information, click here: [advertising URL]" could be sent to the device.
[1588] Specific examples
[1589] If a user sends a message asking "What are the most popular smartphones these days?", the following happens:
[1590] 1. The device forwards the message to the server.
[1591] 2. The server analyzes the message and extracts the keywords "recent," "popular," and "smartphone."
[1592] 3. The server uses an emotion engine to analyze whether the person is showing "interest."
[1593] 4. The server generates the search query "popular smartphones 2023."
[1594] 5. The server sends a query to the Google Search API and retrieves the search results.
[1595] 6. The server selects important information and extracts key smartphone information.
[1596] 7. The server uses GPT-4 to generate a response such as, "Popular smartphones in 2023 will be the iPhone 14 and Google Pixel 6."
[1597] 8. The server conducts an advertising auction for "smartphones" and selects the advertisement from the highest bidder.
[1598] 9. The server sends the final message to the device, which then displays the message to the user: "Popular smartphones in 2023 will be the iPhone 14 and Google Pixel 6. Learn more: [ad URL]."
[1599] Example prompts for generative AI models
[1600] "Write a code that uses emotion recognition to determine that a user is interested in the question 'What are the popular smartphones these days?' and then uses the Google Search API to provide a ranking of the most popular smartphones for 2023."
[1601] This prompt can be used as input for a generative AI model to generate accurate code and explanations.
[1602] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1603] Step 1: Receiving a message
[1604] A user sends a message using a messaging application asking, "What are the popular smartphones these days?"
[1605] Input: User message: "What are the popular smartphones these days?"
[1606] The terminal receives this message and forwards it to a server over the Internet.
[1607] Output: Message data transferred to the server
[1608] Step 2: Natural Language Processing
[1609] The server analyzes the received message using natural language processing means.
[1610] Input: Message data transferred to the server
[1611] Specifically, morphological analysis is performed using spaCy, a Python NLP software, to extract important keywords such as "recent," "popular," and "smartphone."
[1612] Output: Extracted keywords "recent", "popular", "smartphone"
[1613] Step 3: Emotion Recognition
[1614] The server sends the message to the emotion engine, which analyzes the user's emotions.
[1615] Input: Message data transferred to the server
[1616] For example, the Emotion API of Microsoft Azure's Cognitive Services can be used to determine whether the message content shows interest.
[1617] Output: Determined emotion "interest"
[1618] Step 4: Generating a search query
[1619] The server generates a search query based on the extracted keywords and emotion recognition results.
[1620] Input: Extracted keywords "recent", "popular", "smartphone", determined emotion "interest"
[1621] The generated query will be "Popular smartphones 2023." If the emotion recognition result is "interest," the query will be adjusted to "Popular smartphone recommendations 2023."
[1622] Output: Generated search query "Popular smartphone recommendations 2023"
[1623] Step 5: Perform a search
[1624] The server generates a search query and sends it to an information search engine API to retrieve search results.
[1625] Input: Generated search query "Popular smartphone recommendations 2023"
[1626] Specifically, an HTTP request is used to send a query to an information search engine's API (e.g., Google Custom Search API).
[1627] Output: Search results returned from the search engine API
[1628] Step 6: Parse the search results
[1629] The server receives and analyzes search results obtained from the search engine API.
[1630] Input: Search results returned from the search engine API
[1631] Use an HTML parsing tool like BeautifulSoup to filter the top search results and select the important information.
[1632] Output: Selected important information
[1633] Step 7: Generate a response
[1634] The server uses a large-scale language model to generate natural responses based on the selected information.
[1635] Input: Selected important information
[1636] Here, GPT-4 is used to generate natural, colloquial responses such as, "Popular smartphones in 2023 will be the iPhone 14 and Google Pixel 6."
[1637] Output: A natural response message is generated.
[1638] Step 8: Ad selection
[1639] The server conducts an advertisement auction using keywords associated with the response message.
[1640] Input: Keywords related to the generated natural response message, such as "smartphone" or "iPhone 14"
[1641] For example, use the Google Ads API to select ads from the highest bidders.
[1642] Output: Selected advertising information
[1643] Step 9: Sending the final message
[1644] The server generates a response message and combines it with the advertising information to create a final message.
[1645] Input: Generated natural response message, selected advertising information
[1646] This is sent to the device and presented to the user. For example, a message such as "Popular smartphones in 2023 will be the iPhone 14 and Google Pixel 6. For more information, click here: [advertising URL]" is sent to the device.
[1647] Output: The final message presented to the user
[1648] (Application example 2)
[1649] 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."
[1650] In traditional food delivery systems, users have to spend a lot of time searching for the right menu or restaurant, and the system does not provide suggestions or responses that take into account the user's emotions and moods. Furthermore, relevant advertisements do not necessarily match the user's interests and needs, which does not improve the user experience. This leads to dissatisfaction for users.
[1651] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[1652] In this invention, the server includes means for receiving a message sent by a user, means for analyzing the message using natural language processing means and generating a search query, means for recognizing emotions from the message, means for sending the search query to a search engine API, means for obtaining search results from the API, means for analyzing the obtained search results and converting top results into colloquial responses using a large-scale language model, means for adjusting the tone and style of the response based on the emotions, means for extracting keywords related to the response and conducting an advertising auction, means for selecting an advertisement from the highest bidder and including it in a final response message, and means for sending the final response message to the user. This enables the presentation of flexible and personalized responses and related advertisements that take into account the user's emotions.
[1653] "User" refers to a person who uses the food delivery system.
[1654] "Message" means a text-based communication sent by a User to the System.
[1655] "Natural language processing" refers to the technology of analyzing messages and extracting keywords and intent.
[1656] "Search query" means a string of characters generated to specify an information request to a search engine.
[1657] "Emotion recognition" refers to the process of analyzing and recognizing a user's emotional state from a message.
[1658] "Search Engine API" refers to an application program interface used for external information searches.
[1659] "Search Results" refers to the information returned by a search engine based on a search query.
[1660] A "large-scale language model" refers to a natural language processing model that is trained using a very large amount of text data.
[1661] "Adjusting tone and style" refers to the process of changing the way a response is phrased based on the user's feelings.
[1662] An "ad auction" refers to the process in which multiple advertisers compete to acquire advertising space.
[1663] "Final response message" refers to a message containing the response result and related advertisements that the system provides to the user.
[1664] This invention is designed to automatically provide personalized suggestions and advertisements based on user sentiment in a specific food delivery system. The system consists of the following components:
[1665] Specific system configuration
[1666] 1. User message receiving section
[1667] A user sends a message to the system using their own device (e.g., a smartphone). This message is received by the server. For example, suppose a user asks, "Do you have any lunch recommendations?"
[1668] 2. Natural Language Processing Unit
[1669] The received message is analyzed. Natural language processing technology is used to extract important keywords and phrases. For example, keywords such as "recommended" and "lunch" are analyzed to grasp the main points. Hugging Face's natural language processing model (e.g., GPT-4) is used here.
[1670] 3. Emotion recognition section
[1671] The system recognizes the user's emotions from the content of the message. Using an emotion recognition API, it analyzes the user's emotions, such as whether they are feeling stressed or happy. For example, if a user sends a message saying, "I've been feeling stressed lately," the system analyzes their emotional state.
[1672] 4. Search query generation and search execution
[1673] Based on the extracted keywords and the recognized sentiment, a search query is generated, such as "recommended lunch to relieve stress," and sent to the search engine's API, through which related information is retrieved.
[1674] 5. Result Analysis and Response Generation
[1675] The search results are received and converted into a colloquial response using a large-scale language model. Based on the information obtained, a response message is generated in a tone and style that reflects the emotion. For example, a response could be constructed in the form of "An acai bowl is a recommended lunch that will help relieve stress."
[1676] 6. Advertising Selection Department
[1677] Keywords related to the response are extracted and an ad auction is held. The ad from the highest bidder is selected and included in the final response message. For example, a message containing "Advertisement for Specialty Acai Bowls" is generated.
[1678] 7. Message sending part
[1679] A final response message is sent to the user, which contains a personalized answer to the user's question along with a relevant advertisement.
[1680] Hardware and software used
[1681] Server: Runs on a high-performance cloud service (e.g., AWS, Google Cloud Platform).
[1682] Natural language processing models: Use large-scale language models such as Hugging Face's "GPT-4."
[1683] Emotion Recognition API: Use emotion management services such as the Emotion Recognition API.
[1684] Search Engine API: Using Google Search API as an example.
[1685] Advertising API: Use a dedicated advertising API to conduct ad auctions.
[1686] Examples of specific examples and prompts
[1687] Examples:
[1688] Suppose a user sends a message saying, "I've been feeling stressed lately. Do you have any lunch recommendations?" The server receives this message, and the natural language processing unit extracts "recommended" and "lunch" as keywords. The emotion recognition unit recognizes the sense of stress and generates the search query "recommended lunch stress relief." Information from the search results, such as "acai bowl," is converted into a colloquial response using a large-scale language model. The advertisement selection unit adds the related "ad for special acai bowls," generates a final response message, and sends it to the user.
[1689] Example prompt sentence:
[1690] When a user asks, "I've been feeling stressed lately, do you have any lunch recommendations?" generate a response with relaxing food suggestions and relevant ads.
[1691] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1692] Step 1:
[1693] The server receives the message sent by the user.
[1694] Input: A message sent by the user from their device (e.g., "Do you have any lunch recommendations?").
[1695] Processing: The message receiver receives the message and passes the data to the next process.
[1696] Output: The received user message (text data) is obtained as output.
[1697] Step 2:
[1698] The server analyzes the received message using a natural language processor.
[1699] Input: The user message received in step 1.
[1700] Processing: Using natural language processing techniques (e.g., GPT-4), we extract important keywords and phrases from the message. In this example, we analyze keywords such as "recommendation" and "lunch."
[1701] Output: The extracted keywords and phrases are obtained as output.
[1702] Step 3:
[1703] The server recognizes the emotion from the message.
[1704] Input: The user message received in step 1.
[1705] Processing: Using emotion recognition API, analyze the user's emotion from the message. For example, recognize the emotional state of the user, such as "the user is feeling stressed."
[1706] Output: The recognized emotion information is obtained as the output.
[1707] Step 4:
[1708] The server generates a search query based on the extracted keywords and the recognized sentiment and sends it to the search engine's API.
[1709] Input: Keywords extracted in step 2 ("recommended", "lunch") and emotion information recognized in step 3 ("stress").
[1710] Processing: Generate a search query such as "recommended lunches to relieve stress" and send it to the search engine's API.
[1711] Output: The output is the search query sent to the search API.
[1712] Step 5:
[1713] The server retrieves search results from the search engine's API.
[1714] Input: The search query generated in step 4.
[1715] Process: Receive search results returned by the search engine API.
[1716] Output: The search result data is obtained as output.
[1717] Step 6:
[1718] The server analyzes the search results and converts them into colloquial responses using a large-scale language model.
[1719] Input: Search result data obtained in step 5.
[1720] Processing: Using a large-scale language model (such as GPT-4), we select important information from the search results and generate a colloquial response message that is easy for the user to understand. We adjust the tone and style of the response based on emotion recognition results.
[1721] Output: The output is the generated colloquial response message.
[1722] Step 7:
[1723] The server extracts keywords associated with the responses and conducts an advertisement auction.
[1724] Input: The relevant keywords for the response message generated in step 6.
[1725] Processing: Based on the extracted keywords (e.g., "lunch" or "acai bowl"), an ad auction is conducted using the advertising API, and the ad of the advertiser who made the highest bid is selected.
[1726] Output: The selected advertising data is obtained as output.
[1727] Step 8:
[1728] The server generates a final response message and sends it to the user.
[1729] Input: The response message generated in step 6 and the advertising data selected in step 7.
[1730] Processing: The response message includes the advertisement and is sent securely and quickly to the user's device. For example, it may contain something like, "Our recommended lunch for stress relief is an acai bowl. For more information on our specialty acai bowls, click here: [ad URL]."
[1731] Output: The output is the final response message sent to the user.
[1732] The specific processing unit 290 transmits the result of the specific processing to the robot 414. In the robot 414, the control unit 46A causes the speaker 240 and the control target 443 to output the result of the specific processing. The microphone 238 acquires voice indicating a user input regarding the result of the specific processing. The control unit 46A transmits voice data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the voice data.
[1733] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1734] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the robot 414.
[1735] The emotion identification model 59 as an emotion engine may determine the user's emotion according to a specific mapping. Specifically, the emotion identification model 59 may determine the user's emotion according to an emotion map (see FIG. 9), which is a specific mapping. Similarly, the emotion identification model 59 may determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.
[1736] FIG. 9 is a diagram illustrating an emotion map 400 on which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. Emotions closer to the center of the concentric circles are more primitive. Emotions representing states and actions arising from a state of mind are arranged on the outer edges of the concentric circles. The concept of emotion includes both affect and mental states. Emotions generally generated from reactions occurring in the brain are arranged on the left side of the concentric circles. Emotions generally induced by situational judgment are arranged on the right side of the concentric circles. Emotions generally generated from reactions occurring in the brain and induced by situational judgment are arranged on the upper and lower sides of the concentric circles. Furthermore, the emotion of "pleasure" is arranged on the upper side of the concentric circles, and the emotion of "discomfort" is arranged on the lower side. In this way, in the emotion map 400, multiple emotions are mapped based on the structure by which emotions are generated, and emotions that tend to occur simultaneously are mapped close to each other.
[1737] These emotions are distributed in the 3 o'clock direction on emotion map 400, and typically fluctuate between relief and anxiety. In the right half of emotion map 400, situational awareness dominates over internal sensations, resulting in a sense of calm.
[1738] The inside of emotion map 400 represents what is going on in the mind, and the outside of emotion map 400 represents behavior, so the further you go outside emotion map 400, the more visible the emotions become (the more they are expressed in behavior).
[1739] Human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. Emotions can also be created for robots, automobiles, and motorcycles, based on various balances, such as posture and remaining battery life. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. An emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on Voice Emotion Recognition and Emotional Brain Physiological Signal Analysis Systems, Tokushima University, Doctoral Dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map lists emotions belonging to the "reaction" domain, where sensation is dominant. The right half of the emotion map lists emotions belonging to the "situation" domain, where situational awareness is dominant.
[1740] The emotion map defines two emotions that promote learning. One is a negative emotion on the situation side, around the middle of "repentance" or "reflection." In other words, this occurs when the robot experiences negative emotions such as "I never want to feel this way again" or "I don't want to be scolded again." The other is a positive emotion on the response side, around "desire." In other words, this occurs when the robot experiences positive feelings such as "I want more" or "I want to know more."
[1741] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values indicating each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple pieces of training data that are combinations of user input and emotion values indicating each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions that are located close to each other have similar values, as in the emotion map 900 shown in FIG. 10. FIG. 10 shows an example in which multiple emotions, "relieved," "calm," and "reassuring," have similar emotion values.
[1742] The system according to the present disclosure has been described above mainly with respect to the functions of the data processing device 12, but the system according to the present disclosure is not necessarily implemented on a server. The system according to the present disclosure may be implemented as a general information processing system. The present disclosure may be implemented, for example, as a software program running on a personal computer or an application running on a smartphone, etc. The method according to the present disclosure may be provided to users in the form of SaaS (Software as a Service).
[1743] In the above embodiment, an example was given in which the specific processing is performed by one computer 22, but the technology of the present disclosure is not limited to this, and the specific processing may be distributed and performed by a plurality of computers including the computer 22. For example, the data generation model 58 may be provided in an external device of the data processing device 12, and data may be generated in the external device in accordance with input data.
[1744] In the above embodiment, an example in which the specific processing program 56 is stored in the storage 32 has been described, but the technology of the present disclosure is not limited to this. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-transitory storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-transitory storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes the specific processing in accordance with the specific processing program 56.
[1745] Alternatively, the specific processing program 56 may be stored in a storage device such as a server connected to the data processing device 12 via the network 54, and the specific processing program 56 may be downloaded and installed on the computer 22 in response to a request from the data processing device 12.
[1746] It is not necessary to store all of the specific processing program 56 in a storage device such as a server connected to the data processing device 12 via the network 54, or to store all of the specific processing program 56 in the storage 32; only a portion of the specific processing program 56 may be stored.
[1747] The hardware resource for executing a specific process can be any of the following processors: An example of a processor is a CPU, which is a general-purpose processor that functions as a hardware resource for executing a specific process by executing software, i.e., a program. Another example of a processor is a dedicated electrical circuit, such as an FPGA (Field-Programmable Gate Array), a PLD (Programmable Logic Device), or an ASIC (Application Specific Integrated Circuit), which is a processor with a circuit configuration designed specifically for executing a specific process. Each processor has built-in or connected memory, and each processor uses the memory to execute the specific process.
[1748] The hardware resource that executes the specific processing may be configured with one of these various processors, or may be configured with a combination of two or more processors of the same or different types (for example, a combination of multiple FPGAs, or a combination of a CPU and an FPGA). Also, the hardware resource that executes the specific processing may be a single processor.
[1749] As an example of a system configured with a single processor, first, one processor is configured by combining one or more CPUs and software, and this processor functions as a hardware resource that executes a specific process. Second, there is a system that uses a processor that realizes the functions of an entire system including multiple hardware resources that execute a specific process on a single IC chip, as typified by SoC (System-on-a-chip). In this way, a specific process is realized using one or more of the above-mentioned various processors as hardware resources.
[1750] Furthermore, the hardware structure of these various processors can be, more specifically, an electric circuit that combines circuit elements such as semiconductor devices. The specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps may be deleted, new steps may be added, or the processing order may be rearranged, without departing from the spirit of the invention.
[1751] The above-described description and illustrations are a detailed explanation of the parts related to the technology of the present disclosure and are merely an example of the technology of the present disclosure. For example, the above description of the configuration, functions, actions, and effects is an explanation of an example of the configuration, functions, actions, and effects of the parts related to the technology of the present disclosure. Therefore, it goes without saying that unnecessary parts may be deleted, new elements may be added, or replacements may be made to the above-described description and illustrations within the scope of the gist of the technology of the present disclosure. Furthermore, to avoid confusion and facilitate understanding of the parts related to the technology of the present disclosure, the above-described description and illustrations omit explanations of common technical knowledge that do not require particular explanation to enable the implementation of the technology of the present disclosure.
[1752] All publications, patent applications, and technical standards mentioned in this specification are herein incorporated by reference to the same extent as if each individual publication, patent application, or technical standard was specifically and individually indicated to be incorporated by reference.
[1753] The following is further disclosed regarding the above embodiment.
[1754] (Claim 1)
[1755] means for receiving messages sent by users;
[1756] means for analyzing the message using natural language processing means and generating a search query;
[1757] means for transmitting the search query to a search engine API;
[1758] means for obtaining search results from the API;
[1759] a means for analyzing the retrieved search results and converting the top results into colloquial responses using a large-scale language model;
[1760] means for extracting keywords associated with the response and conducting an advertising auction;
[1761] means for selecting the advertisement of the high bidder for inclusion in a final response message;
[1762] means for transmitting said final response message to a user.
[1763] (Claim 2)
[1764] 2. The system according to claim 1, wherein the natural language processing means includes a means for performing semantic analysis processing.
[1765] (Claim 3)
[1766] 10. The system of claim 1, further comprising means for using a machine learning algorithm as the large-scale language model.
[1767] "Example 1"
[1768] (Claim 1)
[1769] means for receiving messages sent by users;
[1770] A means for analyzing the message by natural language processing means and extracting important keywords and intentions;
[1771] A means for generating appropriate search queries based on the extracted keywords and intent;
[1772] means for transmitting the search query to a search engine interface;
[1773] means for obtaining search results from the interface;
[1774] a means for analyzing the retrieved search results, selecting the top results, and converting them into natural language responses using a large-scale language model;
[1775] means for conducting an advertising auction based on keywords associated with the response;
[1776] means for selecting the advertisement of the high bidder for inclusion in a final response message;
[1777] means for transmitting said final response message to a user.
[1778] (Claim 2)
[1779] 2. The system according to claim 1, wherein the natural language processing means includes a means for performing semantic analysis processing.
[1780] (Claim 3)
[1781] 10. The system of claim 1, further comprising means for using a machine learning algorithm as the large-scale language model.
[1782] "Application Example 1"
[1783] (Claim 1)
[1784] means for receiving messages sent by users;
[1785] means for analyzing the message using natural language processing means and generating a search query;
[1786] means for transmitting the search query to a search engine API;
[1787] means for obtaining search results from the API;
[1788] a means for analyzing the retrieved search results and converting the top results into colloquial responses using a large-scale language model;
[1789] means for extracting keywords associated with the response and conducting an advertising auction;
[1790] means for selecting the advertisement of the high bidder for inclusion in a final response message;
[1791] means for transmitting the final response message to a user;
[1792] The system includes a means for providing the generated response message and advertisement to the user in a consolidated manner.
[1793] (Claim 2)
[1794] 2. The system according to claim 1, wherein the natural language processing means includes a means for performing semantic analysis processing.
[1795] (Claim 3)
[1796] 10. The system of claim 1, further comprising means for using a machine learning algorithm as the large-scale language model.
[1797] "Example 2: Combining Emotion Engines"
[1798] (Claim 1)
[1799] means for receiving messages sent by users;
[1800] means for analyzing the message by natural language processing means and generating an inquiry query;
[1801] means for recognizing emotions from the message;
[1802] means for generating a search query based on the inquiry query and the emotion recognition result;
[1803] means for transmitting the search query to an API of an information search engine;
[1804] means for obtaining search results from the API;
[1805] A means of analyzing the search results obtained and converting the top results into natural-sounding responses using a large-scale language model; and
[1806] means for extracting keywords associated with the response and conducting an advertisement auction;
[1807] means for selecting the advertisement of the high bidder for inclusion in a final response message;
[1808] means for transmitting said final response message to a user.
[1809] (Claim 2)
[1810] 2. The system according to claim 1, wherein the natural language processing means includes a means for performing semantic analysis processing.
[1811] (Claim 3)
[1812] 10. The system of claim 1, further comprising means for using a machine learning algorithm as the large-scale language model.
[1813] "Application example 2 when combining emotion engines"
[1814] New Claims
[1815] (Claim 1)
[1816] means for receiving messages sent by users;
[1817] means for analyzing the message using natural language processing means and generating a search query;
[1818] means for recognizing emotions from the message;
[1819] means for transmitting the search query to a search engine API;
[1820] means for obtaining search results from the API;
[1821] a means for analyzing the retrieved search results and converting the top results into colloquial responses using a large-scale language model;
[1822] means for adjusting the tone and style of a response based on said emotion;
[1823] means for extracting keywords associated with the response and conducting an advertising auction;
[1824] means for selecting the advertisement of the high bidder for inclusion in a final response message;
[1825] means for transmitting said final response message to a user.
[1826] (Claim 2)
[1827] 2. The system according to claim 1, wherein the natural language processing means includes a means for performing semantic analysis processing.
[1828] (Claim 3)
[1829] 10. The system of claim 1, further comprising means for using a machine learning algorithm as the large-scale language model. [Explanation of symbols]
[1830] 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 messages sent by users; means for analyzing the message using natural language processing means and generating a search query; means for transmitting the search query to a search engine API; means for obtaining search results from the API; a means for analyzing the retrieved search results and converting the top results into colloquial responses using a large-scale language model; means for extracting keywords associated with the response and conducting an advertising auction; means for selecting the advertisement of the high bidder for inclusion in a final response message; means for transmitting said final response message to a user.
2. 2. The system according to claim 1, wherein the natural language processing means includes a means for performing semantic analysis processing.
3. The system of claim 1 , further comprising means for using a machine learning algorithm as the large-scale language model.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A