system
A system that uses natural language processing and generative AI to efficiently search and aggregate information across multiple databases, addressing the challenge of dispersed information and improving sales department efficiency and customer response.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- SOFTBANK GROUP CORP
- Filing Date
- 2024-10-02
- Publication Date
- 2026-04-14
AI Technical Summary
In modern enterprises, information is dispersed across different systems and databases, leading to long search times and inefficiencies, especially in the sales department, where quick information retrieval and 24-hour customer response are needed.
A system that receives user requests through a search box, analyzes the input using a natural language processing engine, sends queries to multiple databases, aggregates results, and generates a natural language response using generative AI, enabling efficient and continuous information provision.
Significantly reduces search time and improves efficiency in the sales department by providing accurate and timely information to customers, enhancing overall company performance.
Smart Images

Figure 2026064835000001_ABST
Abstract
Description
Technical Field
[0001] The technology of the present disclosure relates to a system.
Background Art
[0002] Patent Document 1 discloses a persona chatbot control method performed by at least one processor, including steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to an explanation of a 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
Summary of the Invention
Problems to be Solved by the Invention
[0004] In modern enterprises, since a lot of information is dispersed in different systems and databases, the search time tends to be long. Especially in the sales department, it is a problem to quickly search for necessary information and make appropriate proposals to customers. Furthermore, the demand for an information providing system that can respond to customers 24 hours a day is increasing. The purpose of the present invention is to solve these problems, shorten the search time, and provide a system that provides information more efficiently.
Means for Solving the Problems
[0005] The present invention is a system comprising means for receiving requests entered by a user into a search box and means for analyzing the entered text using a natural language processing engine. Furthermore, it includes means for sending the generated search query to multiple databases and means for aggregating the search results obtained from each database. It also includes means for using a generative AI to generate a natural language response from the aggregated search results and for sending the generated response to the user's terminal. This system enables users to perform efficient searches across multiple databases, significantly reducing search time. It also enables the provision of information to customers 24 hours a day. This means is expected to improve the efficiency of the sales department and contribute to the overall performance of the company.
[0006] A "user" is a person or organization that uses a system to enter a search request and retrieve information.
[0007] The term "search box" refers to the interface portion where users enter their search requests.
[0008] A "search request" refers to the question or keyword that a user enters into the search box.
[0009] A "natural language processing engine" is software that analyzes text entered by a user and generates search queries.
[0010] "Tokenization" is the process of dividing input text into words or phrases.
[0011] "Part-of-speech tagging" is the process of identifying the part of speech of each word and assigning a tag to it.
[0012] Naming Entity Recognition (NER) is the process of identifying important information, such as proper nouns, within text.
[0013] A "search query" is a search instruction generated from a search request and sent to a database.
[0014] A "database" refers to a system in which information and data are organized and stored.
[0015] "Aggregation" is a process of combining search results obtained from multiple databases into one.
[0016] "Generative AI" refers to an artificial intelligence technology that generates responses in natural language based on aggregated search results.
[0017] "Noise data" refers to data that is unnecessary or not useful in search results, etc.
[0018] "Filtering" is a process of removing noise data and extracting only useful data.
[0019] "Extraction of important information" is a process of selecting the most important information for the user from aggregated search results.
[0020] "Summarization" is a process of concisely summarizing aggregated information.
[0021] "Structured response" is what the generative AI outputs in a formally organized form of a response in natural language.
[0022] A "terminal" refers to a device such as a computer or smart device for the user to input information and confirm results.
Brief Explanation of Drawings
[0023] [Figure 1] It is a conceptual diagram showing an example of the configuration of a data processing system according to the first embodiment. [Figure 2] It is a conceptual diagram showing an example of the main functions of a data processing device and a smart device according to the first embodiment. [Figure 3] It is a conceptual diagram showing an example of the configuration of a data processing system according to the second embodiment. [Figure 4] It is a conceptual diagram showing an example of the main functions of a data processing device and smart glasses according to the second embodiment. [Figure 5] It is a conceptual diagram showing an example of the configuration of a data processing system according to the third embodiment. [Figure 6] It is a conceptual diagram showing an example of the main functions of a data processing device and a headset-type terminal according to the third embodiment. [Figure 7] It is a conceptual diagram showing an example of the configuration of a data processing system according to the fourth embodiment. [Figure 8] It is a conceptual diagram showing an example of the main functions of a data processing device and a robot according to the fourth embodiment. [Figure 9] It shows an emotion map to which a plurality of emotions are mapped. [Figure 10] It shows an emotion map to which a plurality of emotions are mapped. [Figure 11] It is a sequence diagram showing the processing flow of the data processing system in Example 1. [Figure 12] It is a sequence diagram showing the processing flow of the data processing system in Application Example 1. [Figure 13] It is a sequence diagram showing the processing flow of the data processing system in Example 2 when an emotion engine is combined. [Figure 14] It is a sequence diagram showing the processing flow of the data processing system in Application Example 2 when an emotion engine is combined.
Embodiments for Carrying Out the Invention
[0024] Hereinafter, an example of an embodiment of a system according to the technology of the present disclosure will be described with reference to the accompanying drawings.
[0025] First, the language used in the following description will be explained.
[0026] In the following embodiments, the signed processor (hereinafter simply referred to as "processor") may be a single arithmetic unit or a combination of multiple arithmetic units. Furthermore, the processor may be a single type of arithmetic unit or a combination of multiple types of arithmetic units. Examples of arithmetic units include CPU (Central Processing Unit), GPU (Graphics Processing Unit), GPGPU (General-Purpose computing on Graphics Processing Units), and APU (Accelerated Processing Unit).
[0027] In the following embodiments, signed RAM (Random Access Memory) is a memory that temporarily stores information and is used as work memory by the processor.
[0028] In the following embodiments, the signed storage is one or more non-volatile storage devices that store various programs and various parameters. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), or magnetic tapes.
[0029] In the following embodiments, the signed communication interface (I / F) is an interface that includes a communication processor and an antenna, etc. The communication interface manages communication between multiple computers. Examples of communication standards applicable to the communication interface include wireless communication standards such as 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), or Bluetooth (registered trademark).
[0030] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." That is, "A and / or B" means that it may be A alone, or B alone, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" applies when expressing three or more things linked by "and / or."
[0031] [First Embodiment]
[0032] Figure 1 shows an example of the configuration of the data processing system 10 according to the first embodiment.
[0033] As shown in Figure 1, the 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.
[0034] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0035] The smart device 14 comprises a computer 36, a reception device 38, an output device 40, a camera 42, and a communication interface 44. The computer 36 comprises a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The reception device 38, output device 40, and camera 42 are also connected to the bus 52.
[0036] The reception device 38 is equipped with a touch panel 38A and a microphone 38B, etc., and receives user input. The touch panel 38A receives user input by detecting contact with an object (e.g., a pen or finger). The microphone 38B receives user input by detecting the user's voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and 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.
[0037] 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 perceptible to the user 20 (e.g., audio and / or text). The display 40A displays visible information such as text and images according to instructions from the processor 46. The speaker 40B outputs audio according to instructions from the processor 46. The camera 42 is a small digital camera equipped with an optical system such as a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.
[0038] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various types of information between processor 46 and processor 28 via network 54.
[0039] Figure 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0040] As shown in Figure 2, in the data processing device 12, a specific processing 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" related to the technology of this 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 according to the specific processing program 56 executed on the RAM 30.
[0041] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0042] In the smart device 14, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The reception output program 60 is used in conjunction with a 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 processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0043] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the smart device 14 as the "terminal".
[0044] This invention relates to a search system that allows users to efficiently search for information and quickly obtain the data they need. This search system receives a request entered by the user into a search box, analyzes it using a natural language processing engine, and sends the generated search query to multiple databases. The results obtained from each database are aggregated, and a generative AI processes them into a natural language response. Finally, the generated response is sent to the user's terminal, and the results are displayed.
[0045] Description of the system's programs and processes
[0046] 1. Enter the user's search request.
[0047] The user enters "Tell me the price and features of the new product" into the portal's search bar.
[0048] The server receives user input and recognizes it as a search request.
[0049] 2. Analysis using a natural language processing engine
[0050] The server uses a natural language processing engine to parse the search request. The parsing process includes text tokenization, part-of-speech tagging, and naming entity recognition (NER).
[0051] For example, keywords such as "new product," "price," and "features" might be identified.
[0052] 3. Generating search queries
[0053] The server generates a query for database searching based on the identified keywords.
[0054] For example, a search query is generated that includes price and features related to "new products".
[0055] 4. Querying the database
[0056] The server sends the generated search query to multiple databases (e.g., a product information database, a pricing database).
[0057] Each database searches for the corresponding information and returns the results to the server.
[0058] 5. Aggregation of search results
[0059] The server aggregates search results obtained from multiple databases.
[0060] Duplicate data is removed, and noisy data is filtered.
[0061] Extract and summarize important information as needed.
[0062] 6. Response generation using generative AI
[0063] The server uses generative AI to generate aggregated information as a natural language response.
[0064] For example, a response is generated in the format, "The price of the new product X is Y yen, and its features are Z."
[0065] 7. Sending a response
[0066] The server sends the generated response to the user's terminal.
[0067] The user can view the results on their device. For example, the response may be displayed through a web browser or a dedicated application.
[0068] Specific example
[0069] Example 1: Internal search
[0070] 1. The user enters "Recent project progress" into the portal's search bar.
[0071] 2. The server receives the input, and the natural language processing engine extracts the keywords "project" and "progress."
[0072] 3. The server generates queries related to "project progress" and sends them to multiple databases.
[0073] 4. The database returns the information, and the server aggregates it.
[0074] 5. The generative AI generates the response, "Project A is 80% complete, Project B is 60% complete."
[0075] 6. The server sends a response to the user's terminal, and the user confirms it.
[0076] Example 2: External Portal
[0077] 1. The user enters "Tell me the price and features of the new product" into the portal.
[0078] 2. The server receives the input, and the natural language processing engine extracts the keywords "new product," "price," and "features."
[0079] 3. The server generates a query related to "the price and features of the new product" and sends it to the product information database.
[0080] 4. The database returns the information, and the server aggregates it.
[0081] 5. The generative AI generates the response, "The price of the new product X is Y yen, and its features are Z."
[0082] 6. The server sends a response to the user's terminal, and the user confirms it.
[0083] In this way, the search system based on the present invention enables users to efficiently acquire information and quickly confirm the necessary data. Furthermore, it enables the provision of 24-hour service, significantly improving user convenience.
[0084] The following describes the processing flow.
[0085] Step 1:
[0086] The user enters a search request (e.g., "Recent project progress") into the portal's search box.
[0087] Step 2:
[0088] The server receives a search request from the user. At this point, the entered text data is sent to the server.
[0089] Step 3:
[0090] The server passes the search request to the natural language processing engine and begins the analysis. The analysis includes the following processes:
[0091] Tokenization: Divides the input text into words or phrases.
[0092] Part-of-speech tagging: Identify the part of speech of each word and tag it.
[0093] Naming Entity Recognition (NER): Identifies proper nouns and important information within text.
[0094] Step 4:
[0095] The server generates search queries from the results analyzed by the natural language processing engine. For example, search queries corresponding to "recent projects" and "progress" are generated.
[0096] Step 5:
[0097] The server sends the generated search query to multiple internal databases (e.g., project management database, HR database). The search request is made to each database in the appropriate query format.
[0098] Step 6:
[0099] The database performs a search based on the query received from the server and retrieves the corresponding data. Each database returns the search results to the server.
[0100] Step 7:
[0101] The server receives search results from multiple databases and aggregates them. This aggregation process includes the following steps:
[0102] Filtering noisy data: Removes unnecessary data.
[0103] Duplicate data removal: Consolidate or delete data with identical content.
[0104] Extracting essential information: Extract only the information necessary for the user.
[0105] Step 8:
[0106] Based on the aggregated search results, the server uses generative AI to generate natural language responses. For example, a response in the format "Project A is 80% complete, Project B is 60% complete" might be generated.
[0107] Step 9:
[0108] The server sends the generated natural language response to the user's terminal. The response is sent in a format that can be displayed through a web browser or a dedicated application.
[0109] Step 10:
[0110] The user checks the response sent from the server on their device. For example, the response may be displayed below the search bar or in the results display area.
[0111] This processing flow allows users to quickly and efficiently obtain the necessary information and proceed with their work smoothly.
[0112] (Example 1)
[0113] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."
[0114] In today's internet environment, it is crucial for users to quickly and accurately obtain the information they seek. However, conventional search systems have low accuracy in parsing input text and insufficient aggregation of search results. As a result, users have had to spend a lot of time manually organizing information. Furthermore, search results often contain a lot of noise and duplicate data, making it difficult to find the necessary information. There is a need to solve these problems and provide a more efficient and accurate information retrieval system.
[0115] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0116] In this invention, the server includes means for receiving a request entered by the user into a search box, means for analyzing the input text using a natural language processing engine, means for sending the generated search query to multiple databases, means for aggregating the search results obtained from each database, means for removing duplicate data, filtering noise data, and extracting and summarizing important information, means including a generative AI that generates the aggregated search results as a natural language response, and means for sending the generated response to the user's terminal. This makes it possible to quickly provide highly accurate search results in response to the user's input request and to efficiently obtain the necessary information.
[0117] A "search bar" is an interface for users to enter text-based search questions.
[0118] A "natural language processing engine" is software that analyzes input text and understands its meaning and structure.
[0119] A "search query" is a request sent to a database to retrieve specific information.
[0120] A "database" is a system for efficiently managing, searching, and retrieving organized data.
[0121] "Aggregating search results" is the process of integrating information obtained from multiple databases and removing duplication and noise.
[0122] "Removing duplicate data" is the process of consolidating identical information that appears multiple times into a single entry.
[0123] "Noise filtering" is the process of removing irrelevant data and errors from search results.
[0124] "Extracting and summarizing key information" is the process of selecting the most relevant information for the user from aggregated data and summarizing it concisely.
[0125] "Generative AI" is artificial intelligence that generates natural language responses based on given data or prompts.
[0126] "User's device" refers to a device such as a computer, smartphone, or tablet that a user uses to access the internet or the system.
[0127] This invention relates to a search system that allows users to efficiently search for information and quickly obtain the data they need. The system consists of a server, a user terminal, a natural language processing engine, a database, and a generative AI. Specifically, the following hardware and software are used. A general network server can be used as the server, and user terminals include computers, smartphones, and tablets. The software includes a natural language processing engine (e.g., BERT), a database management system (e.g., PostgreSQL, MySQL®), and a generative AI (e.g., GPT-4®).
[0128] The server first receives a search request from the user's terminal. This request is sent in text format entered into the search box. The server then uses a natural language processing engine to parse the input text. This parsing process includes text tokenization, part-of-speech tagging, and naming entity recognition (NER), identifying the necessary keywords. Next, the server generates a search query based on the identified keywords and sends it to multiple databases. The databases search for corresponding information and return the results to the server. The server aggregates the returned results, removing duplicate data, filtering out noise, and extracting and summarizing important information. The aggregated information is then generated as a natural language response using generative AI. Finally, the generated response is sent to the user's terminal, allowing the user to review the results.
[0129] As a concrete example, consider a scenario where a user enters "Tell me the price and features of the new product" into the portal's search bar. Upon receiving this request, the server uses a natural language processing engine to extract the keywords "new product," "price," and "features." The server then generates a database search query based on these keywords and sends the query to the product information database and the price database. The information returned from each database is aggregated, and duplicate and noisy data is removed. Finally, a response is generated using generative AI, such as "The price of the new product X is Y yen, and its features are Z," in natural language. This response is sent to the user's terminal, allowing the user to view the results.
[0130] An example of a prompt message to give instructions to a generative AI is as follows: "Based on this data, please generate a response in the following format: 'Product name: ○○, Price: △△ yen, Features: □□'."
[0131] In this way, the search system based on the present invention enables users to efficiently acquire information and quickly confirm the necessary data. Furthermore, it enables the provision of 24-hour service, significantly improving user convenience.
[0132] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0133] Step 1:
[0134] The user enters "Tell me the price and features of the new product" into the portal's search bar.
[0135] Input: User text input
[0136] Specific action: The user enters a question into the search bar of a web browser or application and presses the submit button.
[0137] Output: The search request is sent to the server.
[0138] Step 2:
[0139] The server receives user input and recognizes it as a search request.
[0140] Input: User-entered text: "Tell me the price and features of the new product."
[0141] Specific operation: The server receives an HTTP request and extracts the user's input text from the request body.
[0142] Output: The extracted text is sent to the natural language processing engine.
[0143] Step 3:
[0144] The server uses a natural language processing engine (e.g., BERT) to parse the search request.
[0145] Input: Extracted user input text
[0146] Specific operation: The server sends text to the natural language processing engine, where it performs tokenization, part-of-speech tagging, naming entity recognition (NER), etc.
[0147] Output: The analysis results in a keyword list. For example, the keywords "new product," "price," and "features" are identified.
[0148] Step 4:
[0149] The server generates a query for database searching based on the identified keywords.
[0150] Input: Keyword list
[0151] Specific operation: The server generates search queries, such as SQL queries, based on keywords. For example, "SELECT FROM products WHERE category='New Products' AND attributes IN ('Price', 'Features')"
[0152] Output: The generated search query is obtained.
[0153] Step 5:
[0154] The server sends the generated search query to multiple databases (for example, a product information database, a pricing database).
[0155] Input: Generated search query
[0156] Specific operation: The server sends the generated query to the database management system and retrieves the corresponding data.
[0157] Output: Search results are returned from each database.
[0158] Step 6:
[0159] The server aggregates search results obtained from multiple databases.
[0160] Input: Search results from database
[0161] Specific operation: The server integrates the results received from multiple databases and creates a single response dataset.
[0162] Output: Aggregated search results are obtained.
[0163] Step 7:
[0164] The server removes duplicate data, filters out noisy data, and extracts and summarizes important information.
[0165] Input: Aggregated search results
[0166] Specific operation: The server removes duplicate entries, filters out unnecessary data (noise), and extracts and summarizes important information.
[0167] Output: Filtered and summarized search results are obtained.
[0168] Step 8:
[0169] The server uses a generative AI (e.g., GPT-4) to generate aggregated information as a natural language response.
[0170] Input: Filtered and summarized search results
[0171] Specific operation: The server inputs the aggregation results into the generative AI, which then uses prompts to generate a natural language response.
[0172] Output: A generated natural language response is obtained. For example, the response is generated in the format, "The price of the new product X is Y yen, and its features are Z."
[0173] Step 9:
[0174] The server sends the generated response to the user's terminal.
[0175] Input: Generated natural language response
[0176] Specific operation: The server sends the generated natural language response to the user's terminal as an HTTP response.
[0177] Output: The user can check the results on their device.
[0178] (Application Example 1)
[0179] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."
[0180] Current inventory management and work instructions in factories rely on manual processes and existing basic digital tools, resulting in low efficiency. Furthermore, obtaining real-time information is difficult, and there is a need for a means to quickly acquire necessary information. Additionally, there is a lack of interfaces that allow workers to immediately grasp the information they need.
[0181] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[0182] In this invention, the server includes means for receiving requests from users through a search window or voice input means, means for analyzing input text using a natural language processing engine, means for sending the generated search query to multiple databases, means for aggregating the search results obtained from each database, means including a generative AI that generates the aggregated search results as a natural language response, means for sending the generated response to the user's terminal or display device, means including a voice recognition function, and means for using a display device as a user interface. As a result, users can obtain necessary information in real time by voice input, which significantly improves inventory management and work efficiency within the factory.
[0183] A "search bar" is an interface for users to enter text-based requests.
[0184] A "voice input device" is a device that allows a user to input a request using their voice.
[0185] A "natural language processing engine" is a program that analyzes input text and understands its meaning.
[0186] A "search query" is a set of instructions created to retrieve specific information from a database.
[0187] A "database" is a system that stores organized data and provides it in a searchable format.
[0188] "Aggregation" is the process of combining information obtained from multiple data sources into a single entity.
[0189] "Generative AI" is artificial intelligence that generates responses in natural language from aggregated information.
[0190] A "user's terminal" is a device that a user operates and uses to receive information.
[0191] A "display device" is a device used to visually display information.
[0192] In order to implement this invention, the following system is required. The system is a search system in which the user inputs a request using a search window or voice input means, and the system analyzes it to provide the desired information.
[0193] hardware
[0194] Smart glasses: Display devices that allow users to visually confirm information (e.g., Google® Glass®, Vuzix Blade).
[0195] Voice input microphone: A device that acquires the user's voice as input.
[0196] software
[0197] Speech recognition engine (e.g., speech_recognition library): Converts speech input into text.
[0198] Natural language processing engine (e.g., transformers library): Analyzes input text and generates search queries.
[0199] Database access libraries (e.g., the requests library): Send generated search queries to the database and retrieve results.
[0200] Generative AI models: These models generate natural language responses based on acquired data.
[0201] Operating Procedure
[0202] 1. Enter the user's search request:
[0203] The user speaks into the microphone of their smart glasses and says, "Tell me the stock status of part X."
[0204] 2. Speech recognition:
[0205] The server uses a speech recognition engine to convert speech into text.
[0206] 3. Natural Language Processing:
[0207] The server uses a natural language processing engine to analyze the text and generate search queries from the extracted keywords.
[0208] 4. Querying the database:
[0209] The server generates search queries and sends them to the database to retrieve inventory and location information.
[0210] 5. Response generation using generative AI:
[0211] Based on the information acquired by the server, a generative AI model is used to generate a response in natural language.
[0212] 6. Results display:
[0213] The server displays the generated response on the smart glasses' screen for the user to confirm.
[0214] Specific example
[0215] For example, if a user voice-inputs a request in a factory saying, "Tell me the inventory of part X," the server converts the voice into text, extracts the keywords "part X" and "inventory," and generates a search query. This is sent to the database, which returns information such as, "There are 50 units of part X in stock, and they are located in warehouse B." Based on this information, the server uses a generative AI model to generate a natural language response, "There are 50 units of part X in stock, and they are located in warehouse B," which is then displayed on the smart glasses' screen.
[0216] Examples of prompt messages include the following:
[0217] "Please tell me the stock status of part X."
[0218] This allows users to quickly obtain the information they need in real time, significantly improving inventory management and operational efficiency within the factory.
[0219] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0220] Step 1:
[0221] The user speaks into the smart glasses' microphone and says, "Tell me the stock status of part X." This voice data is then input.
[0222] Step 2:
[0223] The server uses a speech recognition engine (speech_recognition library) to convert the user's voice data into text data. The converted text data is then output.
[0224] Step 3:
[0225] The server uses a natural language processing engine (transformers library) to analyze the converted text data. During the analysis, the keywords "part X" and "inventory" are extracted, and a search query is generated. This search query is then output.
[0226] Step 4:
[0227] The server sends the generated search query to the database using the database access library (requests library). Specifically, it sends the keywords "part X" and "inventory" as query parameters and makes an API request to search for the corresponding record.
[0228] Step 5:
[0229] The database retrieves information corresponding to the query (e.g., inventory quantity and location information) and returns it to the server. This search result is then output.
[0230] Step 6:
[0231] The server uses a generative AI model to generate a natural language response from the retrieved search results. For example, a response in the format "There are 50 units of part X in stock, and they are located in warehouse B" is generated. This generated response is then output.
[0232] Step 7:
[0233] The server sends the generated response to the smart glasses' display device. The user can view the results in real time on the smart glasses' display. The sent response is displayed to the user.
[0234] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[0235] This invention relates to a search system that allows users to efficiently search for information and quickly obtain the data they need. This search system receives a request entered by the user into a search box, analyzes it using a natural language processing engine, and sends the generated search query to multiple databases. The results obtained from each database are aggregated, and a generative AI processes them into a natural language response. Furthermore, by combining this with an emotion engine that recognizes emotions from the user's input text, and adjusting the presentation method of search results based on the recognized emotions, more personalized and effective information delivery becomes possible. Finally, the generated response is sent to the user's terminal, and the results are displayed.
[0236] Description of the system's programs and processes
[0237] 1. Enter the user's search request.
[0238] The user enters "Tell me the price and features of the new product" into the portal's search bar.
[0239] The server receives user input and recognizes it as a search request.
[0240] 2. Emotion recognition by an emotion engine
[0241] The server uses an emotion engine to analyze the sentiment of the input text. For example, it might identify emotion categories such as "joy," "anger," "sadness," or "surprise."
[0242] Example: "Interests" (positive emotions) are identified from user input.
[0243] 3. Analysis using a natural language processing engine
[0244] The server uses a natural language processing engine to parse the search request. The parsing includes the following processes:
[0245] Tokenization: Divides the input text into words or phrases.
[0246] Part-of-speech tagging: Identify the part of speech of each word and tag it.
[0247] Naming Entity Recognition (NER): Identifies proper nouns and important information within text.
[0248] For example, keywords such as "new product," "price," and "features" might be identified.
[0249] 4. Generating search queries
[0250] The server generates a query for database searching based on the identified keywords.
[0251] For example, a search query is generated that includes price and features related to "new products".
[0252] 5. Querying the database
[0253] The server sends the generated search query to multiple internal databases (e.g., product information database, pricing database). The search request is made to each database in the appropriate query format.
[0254] 6. Retrieving search results from the database
[0255] The database performs a search based on the query received from the server and retrieves the corresponding data. Each database returns the search results to the server.
[0256] 7. Aggregation of search results
[0257] The server aggregates search results obtained from multiple databases. This aggregation process includes the following steps:
[0258] Filtering noisy data: Removes unnecessary data.
[0259] Duplicate data removal: Consolidate or delete data with identical content.
[0260] Extracting essential information: Extract only the information necessary for the user.
[0261] 8. Response generation using generative AI
[0262] The server uses generative AI to generate aggregated information as a natural language response. The presentation method and content are adjusted based on recognized emotions.
[0263] For example, a response in the format of "The new product X is priced at Y yen and has features Z. We believe this product will suit your interests" will be generated.
[0264] 9. Sending a response
[0265] The server sends the generated natural language response to the user's terminal. The response is sent in a format that can be displayed through a web browser or a dedicated application.
[0266] 10. User result verification
[0267] The user checks the response sent from the server on their device. For example, the response may be displayed below the search bar or in the results display area.
[0268] Specific example
[0269] Example 1: Internal search
[0270] 1. The user enters "Recent project progress" into the portal's search bar.
[0271] 2. The server receives the input, and the emotion engine analyzes the user's text to identify "concerns" (negative emotions).
[0272] 3. The server uses a natural language processing engine to extract the keywords "project" and "progress."
[0273] 4. The server generates queries related to "project progress" and sends them to multiple databases.
[0274] 5. The database returns information, and the server aggregates it.
[0275] 6. The generative AI generates a response in the format of "Project A is 80% complete, Project B is 60% complete."
[0276] 7. The server generates a response that is adjusted to provide a sense of security based on the emotion recognition information, and sends it to the user's terminal.
[0277] 8. Users can check the progress on their devices with peace of mind.
[0278] Example 2: External Portal
[0279] 1. The user enters "Tell me the price and features of the new product" into the portal.
[0280] 2. The server receives the input, and the emotion engine analyzes the user's text to identify their emotions and determine their "interests" (positive emotions).
[0281] 3. The server uses a natural language processing engine to extract the keywords "new product," "price," and "features."
[0282] 4. The server generates a query related to "the price and features of the new product" and sends it to the product information database.
[0283] 5. The database returns information, and the server aggregates it.
[0284] 6. The generative AI generates a response in the form of "The price of the new product X is Y yen, and its features are Z. I think this product will suit your interests."
[0285] 7. The server sends the generated response to the user's terminal.
[0286] 8. The user checks the price and features while showing interest on the terminal.
[0287] In this way, the search system according to the present invention can recognize the user's emotions and provide information accordingly, thus enriching the user's experience and improving convenience. It also increases the business efficiency of enterprises and contributes to the improvement of customer satisfaction.
[0288] The following describes the processing flow.
[0289] Step 1:
[0290] The user enters a search request (e.g., "Tell me the price and features of a new product") into the search window of the portal.
[0291] Step 2:
[0292] The server receives the search request from the user. At this point, the text data entered is sent to the server.
[0293] Step 3:
[0294] The server activates the emotion engine, analyzes the user's input text, and recognizes the emotion. For example, "interest" (a positive emotion) is identified from the text.
[0295] Step 4:
[0296] The server passes the search request to the natural language processing engine and starts the analysis. The analysis includes the following processes.
[0297] Tokenization: Splitting the input text into words and phrases.
[0298] Part-of-Speech Tagging: Identifying and tagging the part of speech of each word.
[0299] Named Entity Recognition (NER): Identifying proper nouns and important information in the text.
[0300] Step 5:
[0301] The server generates a search query from the results analyzed by the natural language processing engine. For example, a query is constructed based on keywords such as "new product", "price", and "features".
[0302] Step 6:
[0303] The server sends the generated search query to multiple databases (e.g., product information database, price database). A search request is made in an appropriate query format for each database.
[0304] Step 7:
[0305] The database executes a search based on the query received from the server and retrieves the corresponding data. Each database returns the search results to the server.
[0306] Step 8:
[0307] The server receives the search results from multiple databases and aggregates them. The aggregation includes the following processes.
[0308] Filtering of Noise Data: Removing unnecessary data.
[0309] Removal of Duplicate Data: Integrating or deleting data with the same content.
[0310] Extracting essential information: Extract only the information necessary for the user.
[0311] Step 9:
[0312] The server uses generative AI to generate natural language responses based on aggregated search results. The expression and content of the responses are adjusted based on recognized emotions. For example, a response in the format of "New product X is priced at Y yen and has features Z. We think this product will suit your interests" is generated.
[0313] Step 10:
[0314] The server sends the generated response to the user's terminal. The response is sent in a format that can be displayed through a web browser or a dedicated application.
[0315] Step 11:
[0316] The user sees the response sent from the server on their device. For example, the response is displayed below the search bar or in the results display area. Because this response is tailored to the user's emotions, the user experience is improved.
[0317] This processing flow allows users to quickly and efficiently obtain the necessary information and proceed with their work smoothly. Furthermore, user satisfaction is improved because user emotions are recognized and optimal information is provided based on those emotions.
[0318] (Example 2)
[0319] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the smart device 14 as the "terminal".
[0320] Traditional search systems provided uniform results for user input, making it difficult to offer information that fully considered user emotions and intentions. Furthermore, they lacked the means to efficiently aggregate information from multiple databases and effectively generate responses. Improving the user experience required recognizing individual user emotions and adjusting the presentation and content of search results accordingly. Additionally, search results often included irrelevant data, increasing the time and effort users had to access useful information.
[0321] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[0322] In this invention, the server includes means for receiving a request entered by the user into a search box, means for analyzing the input text using a natural language processing engine, means for identifying emotions from the input text using an emotion engine, means for sending the generated search query to multiple databases, means for aggregating the search results obtained from each database, means including a generative AI that generates the aggregated search results as a natural language response, means for adjusting the method of presenting the search results based on the emotion recognition result, and means for sending the generated response to the user's terminal. This makes it possible to present individual search results according to the user's emotions, enabling efficient and personalized information provision. Furthermore, by filtering out noise data and extracting important information, it becomes possible for users to quickly and reliably access the information they are looking for.
[0323] A "user" is a person who uses a system to enter a search request and receive the results.
[0324] A "search box" is an interface for users to enter search requests.
[0325] A "server" is a computer system that manages and executes the process from receiving search requests to generating search result responses.
[0326] A "natural language processing engine" is a software component that analyzes input text and extracts meaning and important information.
[0327] An "emotion engine" is a software component that analyzes and identifies emotions from user input text.
[0328] A "search query" is a series of instructions generated to retrieve information from a database.
[0329] A "database" is a system that systematically stores and manages information and provides data in response to queries.
[0330] "Aggregation" is the process of integrating information obtained from multiple databases to construct results that meet a specific purpose.
[0331] "Generative AI" refers to artificial intelligence that generates natural language responses based on aggregated search results.
[0332] "Noise data" refers to unnecessary data or misinformation included in search results.
[0333] "Extracting important information" is the process of selecting information from search results that is useful and important to the user.
[0334] "Method of presenting search results" refers to the format and method used to display search results to the user.
[0335] A "natural language response" is a text-based response generated in a format that is easy for humans to understand.
[0336] A "device" is a device that a user uses to enter a search request and receive search results.
[0337] This invention relates to a search system for efficiently and personally processing user search requests. The system includes the following main components:
[0338] 1. Entering and receiving search requests
[0339] The user enters a search request into the search box on the device. An example of this input is, "Tell me the price and features of the new product." The device receives this input and sends it to the server.
[0340] 2. Sentiment analysis
[0341] The server uses an emotion engine to identify emotions from the input text. This emotion engine has the ability to identify emotion categories such as "joy," "anger," "sadness," and "surprise." For example, if the user inputs "Tell me the price and features of the new product," the emotion engine will identify the positive emotion of "interest."
[0342] 3. Natural Language Processing
[0343] The server uses a natural language processing engine to analyze the input text. The natural language processing engine includes functions such as tokenization, which divides the text into words and phrases; part-of-speech tagging, which identifies and tags the part of speech of words; and naming entity recognition (NER), which identifies proper nouns and important information. For example, keywords such as "new product," "price," and "features" may be extracted.
[0344] 4. Generating search queries
[0345] The server generates queries for database searches based on the extracted keywords. The query generation engine performs this process and constructs appropriate search queries. For example, a search query containing "price of new product X" and "features of new product X" is generated.
[0346] 5. Querying the database
[0347] The server sends the generated queries to multiple databases, including product information databases and pricing databases, and the search requests are sent to each database in the appropriate format.
[0348] 6. Retrieving and aggregating search results
[0349] The database retrieves information in response to a query and returns the results to the server. The server aggregates these search results and performs the following processing.
[0350] Filtering noisy data: Removes unnecessary data.
[0351] Duplicate data removal: Consolidate or delete data with identical content.
[0352] Extracting important information: Extract only the information that is useful to the user.
[0353] 7. Response generation
[0354] The server uses generative AI to generate natural language responses based on aggregated information. The generative AI adjusts the content and presentation of the response based on the emotion recognition results. For example, a response such as, "The price of the new product X is Y yen, and its features are Z. We think this product will suit your interests," might be generated.
[0355] 8. Sending and displaying responses
[0356] The server sends the generated response to the user's terminal. The terminal displays this response, allowing the user to verify the result.
[0357] Example of a prompt
[0358] Prompt example:
[0359] A user entered "Tell me the price and features of the new product" into the portal. The server performed sentiment recognition and identified "interest." Based on the information retrieved from the search database, generate a response in natural language. The response should be in a format that will capture the user's interest.
[0360] This prompt is used as input to a generative AI model, which then generates an appropriate response based on the relevant information. This allows the search system to provide more personalized search results that are more sensitive to the user's emotions.
[0361] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0362] Step 1:
[0363] Entering and submitting a search request
[0364] The user enters a search request into the device's search bar and presses the send button. An example of this input is "Tell me the price and features of the new product." The device sends this request to the server. The input data is the text entered by the user, and the output data is the search request sent to the server.
[0365] Step 2:
[0366] emotion recognition
[0367] The server passes the received search request to the sentiment engine. The sentiment engine analyzes the emotions in the text entered by the user. For example, emotions such as "interest" may be identified. The input data is the user's search request, and the output data is the identified emotion information. Specifically, the sentiment engine executes an algorithm to identify emotion categories such as "joy," "anger," "sadness," and "surprise."
[0368] Step 3:
[0369] Natural Language Processing
[0370] The server passes the search request to a natural language processing engine for analysis. The natural language processing engine tokenizes the text, tags parts of speech, and performs naming entity recognition (NER). The input data is the user's search request, and the output data is the analyzed tokens, tags, and entity information. Specific operations include extracting keywords such as "new product," "price," and "features."
[0371] Step 4:
[0372] Generating search queries
[0373] The server generates a database search query based on the analyzed keywords. The query generation engine uses an internal algorithm to construct an appropriate search query. The input data is the analyzed keyword information, and the output data is the generated search query. Specifically, a query is generated that includes "the price of new product X" and "the features of new product X".
[0374] Step 5:
[0375] Database query
[0376] The server sends the generated search query to multiple databases. These databases include product information and pricing databases. A search request is made to each database in the appropriate format. The input data is the generated search query, and the output data is the search results from the databases. This process involves accessing the databases via an internal API.
[0377] Step 6:
[0378] Retrieving and aggregating search results
[0379] The database performs a search based on the search query received from the server and retrieves the corresponding data. Each database returns its search results to the server, which then aggregates them. The input data consists of search results from multiple databases, and the output data is the aggregated search results. Specific operations include filtering out noisy data, removing duplicate data, and extracting important information.
[0380] Step 7:
[0381] Natural Language Response Generation
[0382] The server uses generative AI to generate natural language responses based on aggregated search results. The generative AI adjusts the content and presentation of the response based on sentiment recognition results. The input data consists of aggregated search results and sentiment information, while the output data is the generated natural language response. Specifically, it generates responses in the format of, "The new product X is priced at Y yen and has features Z. We believe this product will be of interest to you."
[0383] Step 8:
[0384] Sending and displaying responses
[0385] The server sends the generated natural language response to the user's device. The device displays the received response to the user. The input data is the generated natural language response, and the output data is the response displayed to the user. Specifically, the server sends the response data via the API, and the device displays that data on its screen.
[0386] (Application Example 2)
[0387] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as a "server" and the smart device 14 as a "terminal".
[0388] Traditional search systems can efficiently provide information in response to user requests, but they lack the ability to generate personalized responses based on user emotions. As a result, the user experience is not improved, and efficient information retrieval is difficult. Furthermore, the quality and display of search results are uniform, which presents a challenge in providing optimal information tailored to the user's emotions and situation.
[0389] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.
[0390] In this invention, the server includes means for receiving a request entered by the user into a search box, means for analyzing the entered text using a natural language processing engine, means for sending the generated search query to multiple databases, means for aggregating the search results obtained from each database, means including a generative AI that generates the aggregated search results as a natural language response, means including an emotion engine that recognizes emotions from the user's input text and adjusts the presentation method, and means for sending and displaying the generated response on the user's terminal. This makes it possible to provide search results optimized based on the user's emotions.
[0391] "User" refers to an individual or group that uses the system.
[0392] A "search box" refers to an input field where a user enters a search request.
[0393] A "natural language processing engine" refers to a software module that analyzes text entered by a user and understands its meaning and structure.
[0394] "Methods of analysis" refers to the process of tokenizing the text entered by the user and performing part-of-speech tagging and naming entity recognition.
[0395] A "search query" refers to a statement of inquiry generated based on a user's request, used to retrieve information from a database.
[0396] A "database" refers to a collection of structured information used to respond to search queries.
[0397] "Methods of aggregation" refers to the process of combining search results obtained from multiple databases into a single one.
[0398] "Generative AI" refers to artificial intelligence that generates responses in natural language format based on aggregated search results.
[0399] An "emotion engine" refers to a software module that has the function of analyzing and recognizing emotions from the user's input text.
[0400] "Adjusting the presentation method" refers to changing the display format and content of search results based on user sentiment.
[0401] "Means for sending a response to the user's terminal" refers to the communication means and software used to send and display the generated natural language response to the user's terminal.
[0402] This invention is a search system that provides efficient and personalized information in response to user search requests. This system receives requests entered by the user into a search box, analyzes those requests, and generates appropriate search results.
[0403] The server first receives a request entered by the user in the search box. Once the request is received, it uses a natural language processing engine to parse the text. The parsing includes tokenization, part-of-speech tagging, and naming entity recognition. This identifies important keywords and phrases.
[0404] Next, the server sends the generated search query to multiple databases. Each database returns relevant search results based on the received query. The server aggregates the results from the multiple databases, filters out noisy data, removes duplicate data, and extracts important information.
[0405] Based on aggregated search results, a generative AI generates responses in natural language. This process incorporates an emotion engine to recognize emotions from the user's input text. For example, if the user indicates emotions such as "interest" or "concern," the AI adjusts the response accordingly, providing personalized and effective information.
[0406] The generated response is sent to the user's device and provided in a displayable format. This response is optimized according to the user's emotions to improve the user experience.
[0407] As a concrete example of this system, let's consider the case where a user types "Recommend a new smartphone" into the search bar of their smartphone. Upon receiving this search request, the emotion engine identifies a positive emotion, "interest." The natural language processing engine analyzes the text and generates keywords such as "new smartphone" and "recommendation." The generated search query is then sent to multiple databases, and relevant information is aggregated. The generative AI generates a response, for example, "The new smartphone X costs Y yen and has Z features. We think this smartphone will match your interests," and sends it to the user's device.
[0408] Here are some examples of specific prompt messages:
[0409] User types "Recommend a new smartphone": Emotion is "Interested," search keywords are "new smartphone" and "recommendation." What response is generated?
[0410] In this way, by recognizing the user's emotions and providing information accordingly, it is possible to improve the user experience and enable efficient information retrieval.
[0411] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0412] Step 1:
[0413] The user enters a request into the search box.
[0414] The user enters "Tell me your recommendations for a new smartphone" into the search bar. The input text is sent to the server. The input data is "Tell me your recommendations for a new smartphone," and this text is parsed in the next processing step.
[0415] Step 2:
[0416] The server uses an emotion engine to analyze the sentiment of the input text.
[0417] The server receives the input text and uses its emotion engine to identify the "interest" (positive emotion). The input data is the text "Tell me your recommendations for a new smartphone" from Step 1, and the output is the emotion "interest".
[0418] Step 3:
[0419] The server uses a natural language processing engine to analyze the text and extract keywords.
[0420] The server uses a natural language processing engine to extract the keywords "new smartphone" and "recommendation". The input data is the text from Step 1, "Tell me your recommendations for a new smartphone," and the output is a list of keywords, "new smartphone" and "recommendation."
[0421] Step 4:
[0422] The server generates search queries based on the keywords that have been generated.
[0423] The server generates a search query for the database based on the keywords. The input data is the keywords "new smartphone" and "recommended" from step 3, and the output is the database search query "SELECT FROM products WHERE category='smartphone' AND feature='recommended'".
[0424] Step 5:
[0425] The server sends the generated search query to multiple databases.
[0426] The server sends the search query to multiple databases and retrieves relevant information. The input data is the search query "SELECT FROM products WHERE category='smartphone' AND feature='recommended'" from step 4, and the output is a list of search results retrieved from the databases.
[0427] Step 6:
[0428] The server aggregates search results obtained from multiple databases.
[0429] The server consolidates the retrieved search results, filters out noisy data, removes duplicate data, and extracts important information. The input data is the list of search results obtained in step 5, and the output is the aggregated search results.
[0430] Step 7:
[0431] The server uses generative AI to aggregate search results and generate natural language responses.
[0432] The server generates a natural language response based on the aggregated search results. During this process, it adjusts the presentation of the response based on the emotion identified by the emotion engine, namely "interest." The input data is the aggregated search results from step 6, and the output is the generated natural language response: "The new smartphone X costs Y yen and has Z features. We believe this smartphone will match your interests."
[0433] Step 8:
[0434] The server sends the generated response to the user's terminal.
[0435] The server sends the generated natural language response to the user's terminal for display. The input data is the generated natural language response from step 7, and the output is the response displayed on the user's terminal.
[0436] 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 user input for the result of the specific processing. The control unit 46A transmits the audio data indicating 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.
[0437] Data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of data generation model 58 is ChatGPT (registered trademark) (Internet search).<URL: https: / / openai.com / blog / chatgpt> ), Gemini (registered trademark) (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0438] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the smart device 14.
[0439] [Second Embodiment]
[0440] Figure 3 shows an example of the configuration of the data processing system 210 according to the second embodiment.
[0441] As shown in Figure 3, the data processing system 210 includes a data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.
[0442] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0443] The smart glasses 214 include a computer 36, a microphone 238, a speaker 240, a camera 42, and a communication interface 44. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, and camera 42 are also connected to the bus 52.
[0444] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[0445] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[0446] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[0447] Figure 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Figure 4, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[0448] The specific processing program 56 is an example of a "program" relating to the technology of this 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.
[0449] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0450] In the smart glasses 214, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. 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 processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0451] Next, the identification processing performed by the identification processing unit 290 of the data processing device 12 will be described. 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".
[0452] This invention relates to a search system that allows users to efficiently search for information and quickly obtain the data they need. This search system receives a request entered by the user into a search box, analyzes it using a natural language processing engine, and sends the generated search query to multiple databases. The results obtained from each database are aggregated, and a generative AI processes them into a natural language response. Finally, the generated response is sent to the user's terminal, and the results are displayed.
[0453] Description of the system's programs and processes
[0454] 1. Enter the user's search request.
[0455] The user enters "Tell me the price and features of the new product" into the portal's search bar.
[0456] The server receives user input and recognizes it as a search request.
[0457] 2. Analysis using a natural language processing engine
[0458] The server uses a natural language processing engine to parse the search request. The parsing process includes text tokenization, part-of-speech tagging, and naming entity recognition (NER).
[0459] For example, keywords such as "new product," "price," and "features" might be identified.
[0460] 3. Generating search queries
[0461] The server generates a query for database searching based on the identified keywords.
[0462] For example, a search query is generated that includes price and features related to "new products".
[0463] 4. Querying the database
[0464] The server sends the generated search query to multiple databases (e.g., a product information database, a pricing database).
[0465] Each database searches for the corresponding information and returns the results to the server.
[0466] 5. Aggregation of search results
[0467] The server aggregates search results obtained from multiple databases.
[0468] Duplicate data is removed, and noisy data is filtered.
[0469] Extract and summarize important information as needed.
[0470] 6. Response generation using generative AI
[0471] The server uses generative AI to generate aggregated information as a natural language response.
[0472] For example, a response is generated in the format, "The price of the new product X is Y yen, and its features are Z."
[0473] 7. Sending a response
[0474] The server sends the generated response to the user's terminal.
[0475] The user can view the results on their device. For example, the response may be displayed through a web browser or a dedicated application.
[0476] Specific example
[0477] Example 1: Internal search
[0478] 1. The user enters "Recent project progress" into the portal's search bar.
[0479] 2. The server receives the input, and the natural language processing engine extracts the keywords "project" and "progress."
[0480] 3. The server generates queries related to "project progress" and sends them to multiple databases.
[0481] 4. The database returns the information, and the server aggregates it.
[0482] 5. The generative AI generates the response, "Project A is 80% complete, Project B is 60% complete."
[0483] 6. The server sends a response to the user's terminal, and the user confirms it.
[0484] Example 2: External Portal
[0485] 1. The user enters "Tell me the price and features of the new product" into the portal.
[0486] 2. The server receives the input, and the natural language processing engine extracts the keywords "new product," "price," and "features."
[0487] 3. The server generates a query related to "the price and features of the new product" and sends it to the product information database.
[0488] 4. The database returns the information, and the server aggregates it.
[0489] 5. The generative AI generates the response, "The price of the new product X is Y yen, and its features are Z."
[0490] 6. The server sends a response to the user's terminal, and the user confirms it.
[0491] In this way, the search system based on the present invention enables users to efficiently acquire information and quickly confirm the necessary data. Furthermore, it enables the provision of 24-hour service, significantly improving user convenience.
[0492] The following describes the processing flow.
[0493] Step 1:
[0494] The user enters a search request (e.g., "Recent project progress") into the portal's search box.
[0495] Step 2:
[0496] The server receives a search request from the user. At this point, the entered text data is sent to the server.
[0497] Step 3:
[0498] The server passes the search request to the natural language processing engine and begins the analysis. The analysis includes the following processes:
[0499] Tokenization: Divides the input text into words or phrases.
[0500] Part-of-speech tagging: Identify the part of speech of each word and tag it.
[0501] Naming Entity Recognition (NER): Identifies proper nouns and important information within text.
[0502] Step 4:
[0503] The server generates search queries from the results analyzed by the natural language processing engine. For example, search queries corresponding to "recent projects" and "progress" are generated.
[0504] Step 5:
[0505] The server sends the generated search query to multiple internal databases (e.g., project management database, HR database). The search request is made to each database in the appropriate query format.
[0506] Step 6:
[0507] The database performs a search based on the query received from the server and retrieves the corresponding data. Each database returns the search results to the server.
[0508] Step 7:
[0509] The server receives search results from multiple databases and aggregates them. This aggregation process includes the following steps:
[0510] Filtering noisy data: Removes unnecessary data.
[0511] Duplicate data removal: Consolidate or delete data with identical content.
[0512] Extracting essential information: Extract only the information necessary for the user.
[0513] Step 8:
[0514] Based on the aggregated search results, the server uses generative AI to generate natural language responses. For example, a response in the format "Project A is 80% complete, Project B is 60% complete" might be generated.
[0515] Step 9:
[0516] The server sends the generated natural language response to the user's terminal. The response is sent in a format that can be displayed through a web browser or a dedicated application.
[0517] Step 10:
[0518] The user checks the response sent from the server on their device. For example, the response may be displayed below the search bar or in the results display area.
[0519] This processing flow allows users to quickly and efficiently obtain the necessary information and proceed with their work smoothly.
[0520] (Example 1)
[0521] Next, we will describe Example 1. 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."
[0522] In today's internet environment, it is crucial for users to quickly and accurately obtain the information they seek. However, conventional search systems have low accuracy in parsing input text and insufficient aggregation of search results. As a result, users have had to spend a lot of time manually organizing information. Furthermore, search results often contain a lot of noise and duplicate data, making it difficult to find the necessary information. There is a need to solve these problems and provide a more efficient and accurate information retrieval system.
[0523] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0524] In this invention, the server includes means for receiving a request entered by the user into a search box, means for analyzing the input text using a natural language processing engine, means for sending the generated search query to multiple databases, means for aggregating the search results obtained from each database, means for removing duplicate data, filtering noise data, and extracting and summarizing important information, means including a generative AI that generates the aggregated search results as a natural language response, and means for sending the generated response to the user's terminal. This makes it possible to quickly provide highly accurate search results in response to the user's input request and to efficiently obtain the necessary information.
[0525] A "search bar" is an interface for users to enter text-based search questions.
[0526] A "natural language processing engine" is software that analyzes input text and understands its meaning and structure.
[0527] A "search query" is a request sent to a database to retrieve specific information.
[0528] A "database" is a system for efficiently managing, searching, and retrieving organized data.
[0529] "Aggregating search results" is the process of integrating information obtained from multiple databases and removing duplication and noise.
[0530] "Removing duplicate data" is the process of consolidating identical information that appears multiple times into a single entry.
[0531] "Noise filtering" is the process of removing irrelevant data and errors from search results.
[0532] "Extracting and summarizing key information" is the process of selecting the most relevant information for the user from aggregated data and summarizing it concisely.
[0533] "Generative AI" is artificial intelligence that generates natural language responses based on given data or prompts.
[0534] "User's device" refers to a device such as a computer, smartphone, or tablet that a user uses to access the internet or the system.
[0535] This invention relates to a search system that allows users to efficiently search for information and quickly obtain the data they need. The system consists of a server, a user terminal, a natural language processing engine, a database, and a generative AI. Specifically, the following hardware and software are used. A general network server can be used as the server, and user terminals include computers, smartphones, and tablets. The software includes a natural language processing engine (e.g., BERT), a database management system (e.g., PostgreSQL, MySQL), and a generative AI (e.g., GPT-4).
[0536] The server first receives a search request from the user's terminal. This request is sent in text format entered into the search box. The server then uses a natural language processing engine to parse the input text. This parsing process includes text tokenization, part-of-speech tagging, and naming entity recognition (NER), identifying the necessary keywords. Next, the server generates a search query based on the identified keywords and sends it to multiple databases. The databases search for corresponding information and return the results to the server. The server aggregates the returned results, removing duplicate data, filtering out noise, and extracting and summarizing important information. The aggregated information is then generated as a natural language response using generative AI. Finally, the generated response is sent to the user's terminal, allowing the user to review the results.
[0537] As a concrete example, consider a scenario where a user enters "Tell me the price and features of the new product" into the portal's search bar. Upon receiving this request, the server uses a natural language processing engine to extract the keywords "new product," "price," and "features." The server then generates a database search query based on these keywords and sends the query to the product information database and the price database. The information returned from each database is aggregated, and duplicate and noisy data is removed. Finally, a response is generated using generative AI, such as "The price of the new product X is Y yen, and its features are Z," in natural language. This response is sent to the user's terminal, allowing the user to view the results.
[0538] An example of a prompt message to give instructions to a generative AI is as follows: "Based on this data, please generate a response in the following format: 'Product name: ○○, Price: △△ yen, Features: □□'."
[0539] In this way, the search system based on the present invention enables users to efficiently acquire information and quickly confirm the necessary data. Furthermore, it enables the provision of 24-hour service, significantly improving user convenience.
[0540] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0541] Step 1:
[0542] The user enters "Tell me the price and features of the new product" into the portal's search bar.
[0543] Input: User text input
[0544] Specific action: The user enters a question into the search bar of a web browser or application and presses the submit button.
[0545] Output: The search request is sent to the server.
[0546] Step 2:
[0547] The server receives user input and recognizes it as a search request.
[0548] Input: User-entered text: "Tell me the price and features of the new product."
[0549] Specific operation: The server receives an HTTP request and extracts the user's input text from the request body.
[0550] Output: The extracted text is sent to the natural language processing engine.
[0551] Step 3:
[0552] The server uses a natural language processing engine (e.g., BERT) to parse the search request.
[0553] Input: Extracted user input text
[0554] Specific operation: The server sends text to the natural language processing engine, where it performs tokenization, part-of-speech tagging, naming entity recognition (NER), etc.
[0555] Output: The analysis results in a keyword list. For example, the keywords "new product," "price," and "features" are identified.
[0556] Step 4:
[0557] The server generates a query for database searching based on the identified keywords.
[0558] Input: Keyword list
[0559] Specific operation: The server generates search queries, such as SQL queries, based on keywords. For example, "SELECT FROM products WHERE category='New Products' AND attributes IN ('Price', 'Features')"
[0560] Output: The generated search query is obtained.
[0561] Step 5:
[0562] The server sends the generated search query to multiple databases (for example, a product information database, a pricing database).
[0563] Input: Generated search query
[0564] Specific operation: The server sends the generated query to the database management system and retrieves the corresponding data.
[0565] Output: Search results are returned from each database.
[0566] Step 6:
[0567] The server aggregates search results obtained from multiple databases.
[0568] Input: Search results from database
[0569] Specific operation: The server integrates the results received from multiple databases and creates a single response dataset.
[0570] Output: Aggregated search results are obtained.
[0571] Step 7:
[0572] The server removes duplicate data, filters out noisy data, and extracts and summarizes important information.
[0573] Input: Aggregated search results
[0574] Specific operation: The server removes duplicate entries, filters out unnecessary data (noise), and extracts and summarizes important information.
[0575] Output: Filtered and summarized search results are obtained.
[0576] Step 8:
[0577] The server uses a generative AI (e.g., GPT-4) to generate aggregated information as a natural language response.
[0578] Input: Filtered and summarized search results
[0579] Specific operation: The server inputs the aggregation results into the generative AI, which then uses prompts to generate a natural language response.
[0580] Output: A generated natural language response is obtained. For example, the response is generated in the format, "The price of the new product X is Y yen, and its features are Z."
[0581] Step 9:
[0582] The server sends the generated response to the user's terminal.
[0583] Input: Generated natural language response
[0584] Specific operation: The server sends the generated natural language response to the user's terminal as an HTTP response.
[0585] Output: The user can check the results on their device.
[0586] (Application Example 1)
[0587] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."
[0588] Current inventory management and work instructions in factories rely on manual processes and existing basic digital tools, resulting in low efficiency. Furthermore, obtaining real-time information is difficult, and there is a need for a means to quickly acquire necessary information. Additionally, there is a lack of interfaces that allow workers to immediately grasp the information they need.
[0589] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[0590] In this invention, the server includes means for receiving requests from users through a search window or voice input means, means for analyzing input text using a natural language processing engine, means for sending the generated search query to multiple databases, means for aggregating the search results obtained from each database, means including a generative AI that generates the aggregated search results as a natural language response, means for sending the generated response to the user's terminal or display device, means including a voice recognition function, and means for using a display device as a user interface. As a result, users can obtain necessary information in real time by voice input, which significantly improves inventory management and work efficiency within the factory.
[0591] A "search bar" is an interface for users to enter text-based requests.
[0592] A "voice input device" is a device that allows a user to input a request using their voice.
[0593] A "natural language processing engine" is a program that analyzes input text and understands its meaning.
[0594] A "search query" is a set of instructions created to retrieve specific information from a database.
[0595] A "database" is a system that stores organized data and provides it in a searchable format.
[0596] "Aggregation" is the process of combining information obtained from multiple data sources into a single entity.
[0597] "Generative AI" is artificial intelligence that generates responses in natural language from aggregated information.
[0598] A "user's terminal" is a device that a user operates and uses to receive information.
[0599] A "display device" is a device used to visually display information.
[0600] In order to implement this invention, the following system is required. The system is a search system in which the user inputs a request using a search window or voice input means, and the system analyzes it to provide the desired information.
[0601] hardware
[0602] Smart glasses: Display devices that allow users to visually confirm information (e.g., Google Glass, Vuzix Blade).
[0603] Voice input microphone: A device that acquires the user's voice as input.
[0604] software
[0605] Speech recognition engine (e.g., speech_recognition library): Converts speech input into text.
[0606] Natural language processing engine (e.g., transformers library): Analyzes input text and generates search queries.
[0607] Database access libraries (e.g., the requests library): Send generated search queries to the database and retrieve results.
[0608] Generative AI models: These models generate natural language responses based on acquired data.
[0609] Operating Procedure
[0610] 1. Enter the user's search request:
[0611] The user speaks into the microphone of their smart glasses and says, "Tell me the stock status of part X."
[0612] 2. Speech recognition:
[0613] The server uses a speech recognition engine to convert speech into text.
[0614] 3. Natural Language Processing:
[0615] The server uses a natural language processing engine to analyze the text and generate search queries from the extracted keywords.
[0616] 4. Querying the database:
[0617] The server generates search queries and sends them to the database to retrieve inventory and location information.
[0618] 5. Response generation using generative AI:
[0619] Based on the information acquired by the server, a generative AI model is used to generate a response in natural language.
[0620] 6. Results display:
[0621] The server displays the generated response on the smart glasses' screen for the user to confirm.
[0622] Specific example
[0623] For example, if a user voice-inputs a request in a factory saying, "Tell me the inventory of part X," the server converts the voice into text, extracts the keywords "part X" and "inventory," and generates a search query. This is sent to the database, which returns information such as, "There are 50 units of part X in stock, and they are located in warehouse B." Based on this information, the server uses a generative AI model to generate a natural language response, "There are 50 units of part X in stock, and they are located in warehouse B," which is then displayed on the smart glasses' screen.
[0624] Examples of prompt messages include the following:
[0625] "Please tell me the stock status of part X."
[0626] This allows users to quickly obtain the information they need in real time, significantly improving inventory management and operational efficiency within the factory.
[0627] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0628] Step 1:
[0629] The user speaks into the smart glasses' microphone and says, "Tell me the stock status of part X." This voice data is then input.
[0630] Step 2:
[0631] The server uses a speech recognition engine (speech_recognition library) to convert the user's voice data into text data. The converted text data is then output.
[0632] Step 3:
[0633] The server uses a natural language processing engine (transformers library) to analyze the converted text data. During the analysis, the keywords "part X" and "inventory" are extracted, and a search query is generated. This search query is then output.
[0634] Step 4:
[0635] The server sends the generated search query to the database using the database access library (requests library). Specifically, it sends the keywords "part X" and "inventory" as query parameters and makes an API request to search for the corresponding record.
[0636] Step 5:
[0637] The database retrieves information corresponding to the query (e.g., inventory quantity and location information) and returns it to the server. This search result is then output.
[0638] Step 6:
[0639] The server uses a generative AI model to generate a natural language response from the retrieved search results. For example, a response in the format "There are 50 units of part X in stock, and they are located in warehouse B" is generated. This generated response is then output.
[0640] Step 7:
[0641] The server sends the generated response to the smart glasses' display device. The user can view the results in real time on the smart glasses' display. The sent response is displayed to the user.
[0642] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[0643] This invention relates to a search system that allows users to efficiently search for information and quickly obtain the data they need. This search system receives a request entered by the user into a search box, analyzes it using a natural language processing engine, and sends the generated search query to multiple databases. The results obtained from each database are aggregated, and a generative AI processes them into a natural language response. Furthermore, by combining this with an emotion engine that recognizes emotions from the user's input text, and adjusting the presentation method of search results based on the recognized emotions, more personalized and effective information delivery becomes possible. Finally, the generated response is sent to the user's terminal, and the results are displayed.
[0644] Description of the system's programs and processes
[0645] 1. Enter the user's search request.
[0646] The user enters "Tell me the price and features of the new product" into the portal's search bar.
[0647] The server receives user input and recognizes it as a search request.
[0648] 2. Emotion recognition by an emotion engine
[0649] The server uses an emotion engine to analyze the sentiment of the input text. For example, it might identify emotion categories such as "joy," "anger," "sadness," or "surprise."
[0650] Example: "Interests" (positive emotions) are identified from user input.
[0651] 3. Analysis using a natural language processing engine
[0652] The server uses a natural language processing engine to parse the search request. The parsing includes the following processes:
[0653] Tokenization: Divides the input text into words or phrases.
[0654] Part-of-speech tagging: Identify the part of speech of each word and tag it.
[0655] Naming Entity Recognition (NER): Identifies proper nouns and important information within text.
[0656] For example, keywords such as "new product," "price," and "features" might be identified.
[0657] 4. Generating search queries
[0658] The server generates a query for database searching based on the identified keywords.
[0659] For example, a search query is generated that includes price and features related to "new products".
[0660] 5. Querying the database
[0661] The server sends the generated search query to multiple internal databases (e.g., product information database, pricing database). The search request is made to each database in the appropriate query format.
[0662] 6. Retrieving search results from the database
[0663] The database performs a search based on the query received from the server and retrieves the corresponding data. Each database returns the search results to the server.
[0664] 7. Aggregation of search results
[0665] The server aggregates search results obtained from multiple databases. This aggregation process includes the following steps:
[0666] Filtering noisy data: Removes unnecessary data.
[0667] Duplicate data removal: Consolidate or delete data with identical content.
[0668] Extracting essential information: Extract only the information necessary for the user.
[0669] 8. Response generation using generative AI
[0670] The server uses generative AI to generate aggregated information as a natural language response. The presentation method and content are adjusted based on recognized emotions.
[0671] For example, a response in the format of "The new product X is priced at Y yen and has features Z. We believe this product will suit your interests" will be generated.
[0672] 9. Sending a response
[0673] The server sends the generated natural language response to the user's terminal. The response is sent in a format that can be displayed through a web browser or a dedicated application.
[0674] 10. User result verification
[0675] The user checks the response sent from the server on their device. For example, the response may be displayed below the search bar or in the results display area.
[0676] Specific example
[0677] Example 1: Internal search
[0678] 1. The user enters "Recent project progress" into the portal's search bar.
[0679] 2. The server receives the input, and the emotion engine analyzes the user's text to identify "concerns" (negative emotions).
[0680] 3. The server uses a natural language processing engine to extract the keywords "project" and "progress."
[0681] 4. The server generates queries related to "project progress" and sends them to multiple databases.
[0682] 5. The database returns information, and the server aggregates it.
[0683] 6. The generative AI generates a response in the format of "Project A is 80% complete, Project B is 60% complete."
[0684] 7. The server generates a response that is adjusted to provide a sense of security based on the emotion recognition information, and sends it to the user's terminal.
[0685] 8. Users can check the progress on their devices with peace of mind.
[0686] Example 2: External Portal
[0687] 1. The user enters "Tell me the price and features of the new product" into the portal.
[0688] 2. The server receives the input, and the emotion engine analyzes the user's text to identify their emotions and determine their "interests" (positive emotions).
[0689] 3. The server uses a natural language processing engine to extract the keywords "new product," "price," and "features."
[0690] 4. The server generates a query related to "the price and features of the new product" and sends it to the product information database.
[0691] 5. The database returns information, and the server aggregates it.
[0692] 6. The generative AI generates a response in the format: "The price of the new product X is Y yen, and its features are Z. We believe this product will suit your interests."
[0693] 7. The server sends the generated response to the user's terminal.
[0694] 8. Users check the price and features while showing interest on their device.
[0695] In this way, the search system based on the present invention can recognize the user's emotions and provide information accordingly, thereby enriching the user experience and improving convenience. It also contributes to increasing the operational efficiency of companies and improving customer satisfaction.
[0696] The following describes the processing flow.
[0697] Step 1:
[0698] The user enters a search request (e.g., "Tell me the price and features of the new product") into the portal's search box.
[0699] Step 2:
[0700] The server receives a search request from the user. At this point, the entered text data is sent to the server.
[0701] Step 3:
[0702] The server activates the emotion engine, analyzes the user's input text, and recognizes emotions. For example, "interest" (a positive emotion) might be identified from the text.
[0703] Step 4:
[0704] The server passes the search request to the natural language processing engine and begins the analysis. The analysis includes the following processes:
[0705] Tokenization: Divides the input text into words or phrases.
[0706] Part-of-speech tagging: Identify the part of speech of each word and tag it.
[0707] Naming Entity Recognition (NER): Identifies proper nouns and important information within text.
[0708] Step 5:
[0709] The server generates search queries from the results analyzed by the natural language processing engine. For example, it constructs queries based on keywords such as "new product," "price," and "features."
[0710] Step 6:
[0711] The server sends the generated search query to multiple databases (e.g., product information database, pricing database). The search request is made to each database in the appropriate query format.
[0712] Step 7:
[0713] The database performs a search based on the query received from the server and retrieves the corresponding data. Each database returns the search results to the server.
[0714] Step 8:
[0715] The server receives search results from multiple databases and aggregates them. This aggregation process includes the following steps:
[0716] Filtering noisy data: Removes unnecessary data.
[0717] Duplicate data removal: Consolidate or delete data with identical content.
[0718] Extracting essential information: Extract only the information necessary for the user.
[0719] Step 9:
[0720] The server uses generative AI to generate natural language responses based on aggregated search results. The expression and content of the responses are adjusted based on recognized emotions. For example, a response in the format of "New product X is priced at Y yen and has features Z. We think this product will suit your interests" is generated.
[0721] Step 10:
[0722] The server sends the generated response to the user's terminal. The response is sent in a format that can be displayed through a web browser or a dedicated application.
[0723] Step 11:
[0724] The user sees the response sent from the server on their device. For example, the response is displayed below the search bar or in the results display area. Because this response is tailored to the user's emotions, the user experience is improved.
[0725] This processing flow allows users to quickly and efficiently obtain the necessary information and proceed with their work smoothly. Furthermore, user satisfaction is improved because user emotions are recognized and optimal information is provided based on those emotions.
[0726] (Example 2)
[0727] Next, we will describe Example 2. 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".
[0728] Traditional search systems provided uniform results for user input, making it difficult to offer information that fully considered user emotions and intentions. Furthermore, they lacked the means to efficiently aggregate information from multiple databases and effectively generate responses. Improving the user experience required recognizing individual user emotions and adjusting the presentation and content of search results accordingly. Additionally, search results often included irrelevant data, increasing the time and effort users had to access useful information.
[0729] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[0730] In this invention, the server includes means for receiving a request entered by the user into a search box, means for analyzing the input text using a natural language processing engine, means for identifying emotions from the input text using an emotion engine, means for sending the generated search query to multiple databases, means for aggregating the search results obtained from each database, means including a generative AI that generates the aggregated search results as a natural language response, means for adjusting the method of presenting the search results based on the emotion recognition result, and means for sending the generated response to the user's terminal. This makes it possible to present individual search results according to the user's emotions, enabling efficient and personalized information provision. Furthermore, by filtering out noise data and extracting important information, it becomes possible for users to quickly and reliably access the information they are looking for.
[0731] A "user" is a person who uses a system to enter a search request and receive the results.
[0732] A "search box" is an interface for users to enter search requests.
[0733] A "server" is a computer system that manages and executes the process from receiving search requests to generating search result responses.
[0734] A "natural language processing engine" is a software component that analyzes input text and extracts meaning and important information.
[0735] An "emotion engine" is a software component that analyzes and identifies emotions from user input text.
[0736] A "search query" is a series of instructions generated to retrieve information from a database.
[0737] A "database" is a system that systematically stores and manages information and provides data in response to queries.
[0738] "Aggregation" is the process of integrating information obtained from multiple databases to construct results that meet a specific purpose.
[0739] "Generative AI" refers to artificial intelligence that generates natural language responses based on aggregated search results.
[0740] "Noise data" refers to unnecessary data or misinformation included in search results.
[0741] "Extracting important information" is the process of selecting information from search results that is useful and important to the user.
[0742] "Method of presenting search results" refers to the format and method used to display search results to the user.
[0743] A "natural language response" is a text-based response generated in a format that is easy for humans to understand.
[0744] A "device" is a device that a user uses to enter a search request and receive search results.
[0745] This invention relates to a search system for efficiently and personally processing user search requests. The system includes the following main components:
[0746] 1. Entering and receiving search requests
[0747] The user enters a search request into the search box on the device. An example of this input is, "Tell me the price and features of the new product." The device receives this input and sends it to the server.
[0748] 2. Sentiment analysis
[0749] The server uses an emotion engine to identify emotions from the input text. This emotion engine has the ability to identify emotion categories such as "joy," "anger," "sadness," and "surprise." For example, if the user inputs "Tell me the price and features of the new product," the emotion engine will identify the positive emotion of "interest."
[0750] 3. Natural Language Processing
[0751] The server uses a natural language processing engine to analyze the input text. The natural language processing engine includes functions such as tokenization, which divides the text into words and phrases; part-of-speech tagging, which identifies and tags the part of speech of words; and naming entity recognition (NER), which identifies proper nouns and important information. For example, keywords such as "new product," "price," and "features" may be extracted.
[0752] 4. Generating search queries
[0753] The server generates queries for database searches based on the extracted keywords. The query generation engine performs this process and constructs appropriate search queries. For example, a search query containing "price of new product X" and "features of new product X" is generated.
[0754] 5. Querying the database
[0755] The server sends the generated queries to multiple databases, including product information databases and pricing databases, and the search requests are sent to each database in the appropriate format.
[0756] 6. Retrieving and aggregating search results
[0757] The database retrieves information in response to a query and returns the results to the server. The server aggregates these search results and performs the following processing.
[0758] Filtering noisy data: Removes unnecessary data.
[0759] Duplicate data removal: Consolidate or delete data with identical content.
[0760] Extracting important information: Extract only the information that is useful to the user.
[0761] 7. Response generation
[0762] The server uses generative AI to generate natural language responses based on aggregated information. The generative AI adjusts the content and presentation of the response based on the emotion recognition results. For example, a response such as, "The price of the new product X is Y yen, and its features are Z. We think this product will suit your interests," might be generated.
[0763] 8. Sending and displaying responses
[0764] The server sends the generated response to the user's terminal. The terminal displays this response, allowing the user to verify the result.
[0765] Example of a prompt
[0766] Prompt example:
[0767] A user entered "Tell me the price and features of the new product" into the portal. The server performed sentiment recognition and identified "interest." Based on the information retrieved from the search database, generate a response in natural language. The response should be in a format that will capture the user's interest.
[0768] This prompt is used as input to a generative AI model, which then generates an appropriate response based on the relevant information. This allows the search system to provide more personalized search results that are more sensitive to the user's emotions.
[0769] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0770] Step 1:
[0771] Entering and submitting a search request
[0772] The user enters a search request into the device's search bar and presses the send button. An example of this input is "Tell me the price and features of the new product." The device sends this request to the server. The input data is the text entered by the user, and the output data is the search request sent to the server.
[0773] Step 2:
[0774] emotion recognition
[0775] The server passes the received search request to the sentiment engine. The sentiment engine analyzes the emotions in the text entered by the user. For example, emotions such as "interest" may be identified. The input data is the user's search request, and the output data is the identified emotion information. Specifically, the sentiment engine executes an algorithm to identify emotion categories such as "joy," "anger," "sadness," and "surprise."
[0776] Step 3:
[0777] Natural Language Processing
[0778] The server passes the search request to a natural language processing engine for analysis. The natural language processing engine tokenizes the text, tags parts of speech, and performs naming entity recognition (NER). The input data is the user's search request, and the output data is the analyzed tokens, tags, and entity information. Specific operations include extracting keywords such as "new product," "price," and "features."
[0779] Step 4:
[0780] Generating search queries
[0781] The server generates a database search query based on the analyzed keywords. The query generation engine uses an internal algorithm to construct an appropriate search query. The input data is the analyzed keyword information, and the output data is the generated search query. Specifically, a query is generated that includes "the price of new product X" and "the features of new product X".
[0782] Step 5:
[0783] Database query
[0784] The server sends the generated search query to multiple databases. These databases include product information and pricing databases. A search request is made to each database in the appropriate format. The input data is the generated search query, and the output data is the search results from the databases. This process involves accessing the databases via an internal API.
[0785] Step 6:
[0786] Retrieving and aggregating search results
[0787] The database performs a search based on the search query received from the server and retrieves the corresponding data. Each database returns its search results to the server, which then aggregates them. The input data consists of search results from multiple databases, and the output data is the aggregated search results. Specific operations include filtering out noisy data, removing duplicate data, and extracting important information.
[0788] Step 7:
[0789] Natural Language Response Generation
[0790] The server uses generative AI to generate natural language responses based on aggregated search results. The generative AI adjusts the content and presentation of the response based on sentiment recognition results. The input data consists of aggregated search results and sentiment information, while the output data is the generated natural language response. Specifically, it generates responses in the format of, "The new product X is priced at Y yen and has features Z. We believe this product will be of interest to you."
[0791] Step 8:
[0792] Sending and displaying responses
[0793] The server sends the generated natural language response to the user's device. The device displays the received response to the user. The input data is the generated natural language response, and the output data is the response displayed to the user. Specifically, the server sends the response data via the API, and the device displays that data on its screen.
[0794] (Application Example 2)
[0795] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."
[0796] Traditional search systems can efficiently provide information in response to user requests, but they lack the ability to generate personalized responses based on user emotions. As a result, the user experience is not improved, and efficient information retrieval is difficult. Furthermore, the quality and display of search results are uniform, which presents a challenge in providing optimal information tailored to the user's emotions and situation.
[0797] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.
[0798] In this invention, the server includes means for receiving a request entered by the user into a search box, means for analyzing the entered text using a natural language processing engine, means for sending the generated search query to multiple databases, means for aggregating the search results obtained from each database, means including a generative AI that generates the aggregated search results as a natural language response, means including an emotion engine that recognizes emotions from the user's input text and adjusts the presentation method, and means for sending and displaying the generated response on the user's terminal. This makes it possible to provide search results optimized based on the user's emotions.
[0799] "User" refers to an individual or group that uses the system.
[0800] A "search box" refers to an input field where a user enters a search request.
[0801] A "natural language processing engine" refers to a software module that analyzes text entered by a user and understands its meaning and structure.
[0802] "Methods of analysis" refers to the process of tokenizing the text entered by the user and performing part-of-speech tagging and naming entity recognition.
[0803] A "search query" refers to a statement of inquiry generated based on a user's request, used to retrieve information from a database.
[0804] A "database" refers to a collection of structured information used to respond to search queries.
[0805] "Methods of aggregation" refers to the process of combining search results obtained from multiple databases into a single one.
[0806] "Generative AI" refers to artificial intelligence that generates responses in natural language format based on aggregated search results.
[0807] An "emotion engine" refers to a software module that has the function of analyzing and recognizing emotions from the user's input text.
[0808] "Adjusting the presentation method" refers to changing the display format and content of search results based on user sentiment.
[0809] "Means for sending a response to the user's terminal" refers to the communication means and software used to send and display the generated natural language response to the user's terminal.
[0810] This invention is a search system that provides efficient and personalized information in response to user search requests. This system receives requests entered by the user into a search box, analyzes those requests, and generates appropriate search results.
[0811] The server first receives a request entered by the user in the search box. Once the request is received, it uses a natural language processing engine to parse the text. The parsing includes tokenization, part-of-speech tagging, and naming entity recognition. This identifies important keywords and phrases.
[0812] Next, the server sends the generated search query to multiple databases. Each database returns relevant search results based on the received query. The server aggregates the results from the multiple databases, filters out noisy data, removes duplicate data, and extracts important information.
[0813] Based on aggregated search results, a generative AI generates responses in natural language. This process incorporates an emotion engine to recognize emotions from the user's input text. For example, if the user indicates emotions such as "interest" or "concern," the AI adjusts the response accordingly, providing personalized and effective information.
[0814] The generated response is sent to the user's device and provided in a displayable format. This response is optimized according to the user's emotions to improve the user experience.
[0815] As a concrete example of this system, let's consider the case where a user types "Recommend a new smartphone" into the search bar of their smartphone. Upon receiving this search request, the emotion engine identifies a positive emotion, "interest." The natural language processing engine analyzes the text and generates keywords such as "new smartphone" and "recommendation." The generated search query is then sent to multiple databases, and relevant information is aggregated. The generative AI generates a response, for example, "The new smartphone X costs Y yen and has Z features. We think this smartphone will match your interests," and sends it to the user's device.
[0816] Here are some examples of specific prompt messages:
[0817] User types "Recommend a new smartphone": Emotion is "Interested," search keywords are "new smartphone" and "recommendation." What response is generated?
[0818] In this way, by recognizing the user's emotions and providing information accordingly, it is possible to improve the user experience and enable efficient information retrieval.
[0819] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0820] Step 1:
[0821] The user enters a request into the search box.
[0822] The user enters "Tell me your recommendations for a new smartphone" into the search bar. The input text is sent to the server. The input data is "Tell me your recommendations for a new smartphone," and this text is parsed in the next processing step.
[0823] Step 2:
[0824] The server uses an emotion engine to analyze the sentiment of the input text.
[0825] The server receives the input text and uses its emotion engine to identify the "interest" (positive emotion). The input data is the text "Tell me your recommendations for a new smartphone" from Step 1, and the output is the emotion "interest".
[0826] Step 3:
[0827] The server uses a natural language processing engine to analyze the text and extract keywords.
[0828] The server uses a natural language processing engine to extract the keywords "new smartphone" and "recommendation". The input data is the text from Step 1, "Tell me your recommendations for a new smartphone," and the output is a list of keywords, "new smartphone" and "recommendation."
[0829] Step 4:
[0830] The server generates search queries based on the keywords that have been generated.
[0831] The server generates a search query for the database based on the keywords. The input data is the keywords "new smartphone" and "recommended" from step 3, and the output is the database search query "SELECT FROM products WHERE category='smartphone' AND feature='recommended'".
[0832] Step 5:
[0833] The server sends the generated search query to multiple databases.
[0834] The server sends the search query to multiple databases and retrieves relevant information. The input data is the search query "SELECT FROM products WHERE category='smartphone' AND feature='recommended'" from step 4, and the output is a list of search results retrieved from the databases.
[0835] Step 6:
[0836] The server aggregates search results obtained from multiple databases.
[0837] The server consolidates the retrieved search results, filters out noisy data, removes duplicate data, and extracts important information. The input data is the list of search results obtained in step 5, and the output is the aggregated search results.
[0838] Step 7:
[0839] The server uses generative AI to aggregate search results and generate natural language responses.
[0840] The server generates a natural language response based on the aggregated search results. During this process, it adjusts the presentation of the response based on the emotion identified by the emotion engine, namely "interest." The input data is the aggregated search results from step 6, and the output is the generated natural language response: "The new smartphone X costs Y yen and has Z features. We believe this smartphone will match your interests."
[0841] Step 8:
[0842] The server sends the generated response to the user's terminal.
[0843] The server sends the generated natural language response to the user's terminal for display. The input data is the generated natural language response from step 7, and the output is the response displayed on the user's terminal.
[0844] 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 user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.
[0845] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0846] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the smart glasses 214.
[0847] [Third Embodiment]
[0848] Figure 5 shows an example of the configuration of the data processing system 310 according to the third embodiment.
[0849] As shown in Figure 5, the data processing system 310 includes a data processing device 12 and a headset terminal 314. An example of the data processing device 12 is a server.
[0850] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0851] The headset terminal 314 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication interface 44, and a display 343. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, camera 42, and display 343 are also connected to the bus 52.
[0852] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[0853] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[0854] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[0855] Figure 6 shows an example of the main functions of the data processing device 12 and the headset terminal 314. As shown in Figure 6, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[0856] The specific processing program 56 is an example of a "program" relating to the technology of this 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.
[0857] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0858] In the headset terminal 314, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. 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 processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0859] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the headset terminal 314 will be referred to as the "terminal".
[0860] This invention relates to a search system that allows users to efficiently search for information and quickly obtain the data they need. This search system receives a request entered by the user into a search box, analyzes it using a natural language processing engine, and sends the generated search query to multiple databases. The results obtained from each database are aggregated, and a generative AI processes them into a natural language response. Finally, the generated response is sent to the user's terminal, and the results are displayed.
[0861] System program and processing description
[0862] 1. Enter the user's search request.
[0863] The user enters "Tell me the price and features of the new product" into the portal's search bar.
[0864] The server receives user input and recognizes it as a search request.
[0865] 2. Analysis using a natural language processing engine
[0866] The server uses a natural language processing engine to parse the search request. The parsing process includes text tokenization, part-of-speech tagging, and naming entity recognition (NER).
[0867] For example, keywords such as "new product," "price," and "features" might be identified.
[0868] 3. Generating search queries
[0869] The server generates a query for database searching based on the identified keywords.
[0870] For example, a search query is generated that includes price and features related to "new products".
[0871] 4. Querying the database
[0872] The server sends the generated search query to multiple databases (e.g., a product information database, a pricing database).
[0873] Each database searches for the corresponding information and returns the results to the server.
[0874] 5. Aggregation of search results
[0875] The server aggregates search results obtained from multiple databases.
[0876] Duplicate data is removed, and noisy data is filtered.
[0877] Extract and summarize important information as needed.
[0878] 6. Response generation using generative AI
[0879] The server uses generative AI to generate aggregated information as a natural language response.
[0880] For example, a response is generated in the format, "The price of the new product X is Y yen, and its features are Z."
[0881] 7. Sending a response
[0882] The server sends the generated response to the user's terminal.
[0883] The user can view the results on their device. For example, the response may be displayed through a web browser or a dedicated application.
[0884] Specific example
[0885] Example 1: Internal search
[0886] 1. The user enters "Recent project progress" into the portal's search bar.
[0887] 2. The server receives the input, and the natural language processing engine extracts the keywords "project" and "progress."
[0888] 3. The server generates queries related to "project progress" and sends them to multiple databases.
[0889] 4. The database returns the information, and the server aggregates it.
[0890] 5. The generative AI generates the response, "Project A is 80% complete, Project B is 60% complete."
[0891] 6. The server sends a response to the user's terminal, and the user confirms it.
[0892] Example 2: External Portal
[0893] 1. The user enters "Tell me the price and features of the new product" into the portal.
[0894] 2. The server receives the input, and the natural language processing engine extracts the keywords "new product," "price," and "features."
[0895] 3. The server generates a query related to "the price and features of the new product" and sends it to the product information database.
[0896] 4. The database returns the information, and the server aggregates it.
[0897] 5. The generative AI generates the response, "The price of the new product X is Y yen, and its features are Z."
[0898] 6. The server sends a response to the user's terminal, and the user confirms it.
[0899] In this way, the search system based on the present invention enables users to efficiently acquire information and quickly confirm the necessary data. Furthermore, it enables the provision of 24-hour service, significantly improving user convenience.
[0900] The following describes the processing flow.
[0901] Step 1:
[0902] The user enters a search request (e.g., "Recent project progress") into the portal's search box.
[0903] Step 2:
[0904] The server receives a search request from the user. At this point, the entered text data is sent to the server.
[0905] Step 3:
[0906] The server passes the search request to the natural language processing engine and begins the analysis. The analysis includes the following processes:
[0907] Tokenization: Divides the input text into words or phrases.
[0908] Part-of-speech tagging: Identify the part of speech of each word and tag it.
[0909] Naming Entity Recognition (NER): Identifies proper nouns and important information within text.
[0910] Step 4:
[0911] The server generates search queries from the results analyzed by the natural language processing engine. For example, search queries corresponding to "recent projects" and "progress" are generated.
[0912] Step 5:
[0913] The server sends the generated search query to multiple internal databases (e.g., project management database, HR database). The search request is made to each database in the appropriate query format.
[0914] Step 6:
[0915] The database performs a search based on the query received from the server and retrieves the corresponding data. Each database returns the search results to the server.
[0916] Step 7:
[0917] The server receives search results from multiple databases and aggregates them. This aggregation process includes the following steps:
[0918] Filtering noisy data: Removes unnecessary data.
[0919] Duplicate data removal: Consolidate or delete data with identical content.
[0920] Extracting essential information: Extract only the information necessary for the user.
[0921] Step 8:
[0922] Based on the aggregated search results, the server uses generative AI to generate natural language responses. For example, a response in the format "Project A is 80% complete, Project B is 60% complete" might be generated.
[0923] Step 9:
[0924] The server sends the generated natural language response to the user's terminal. The response is sent in a format that can be displayed through a web browser or a dedicated application.
[0925] Step 10:
[0926] The user checks the response sent from the server on their device. For example, the response may be displayed below the search bar or in the results display area.
[0927] This processing flow allows users to quickly and efficiently obtain the necessary information and proceed with their work smoothly.
[0928] (Example 1)
[0929] Next, we will describe Example 1. 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."
[0930] In today's internet environment, it is crucial for users to quickly and accurately obtain the information they seek. However, conventional search systems have low accuracy in parsing input text and insufficient aggregation of search results. As a result, users have had to spend a lot of time manually organizing information. Furthermore, search results often contain a lot of noisy and duplicate data, making it difficult to find the necessary information. There is a need to solve these problems and provide a more efficient and accurate information retrieval system.
[0931] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0932] In this invention, the server includes means for receiving a request entered by the user into a search box, means for analyzing the input text using a natural language processing engine, means for sending the generated search query to multiple databases, means for aggregating the search results obtained from each database, means for removing duplicate data, filtering noise data, and extracting and summarizing important information, means including a generative AI that generates the aggregated search results as a natural language response, and means for sending the generated response to the user's terminal. This makes it possible to quickly provide highly accurate search results in response to the user's input request and to efficiently obtain the necessary information.
[0933] A "search bar" is an interface for users to enter text-based search questions.
[0934] A "natural language processing engine" is software that analyzes input text and understands its meaning and structure.
[0935] A "search query" is a request sent to a database to retrieve specific information.
[0936] A "database" is a system for efficiently managing, searching, and retrieving organized data.
[0937] "Aggregating search results" is the process of integrating information obtained from multiple databases and removing duplication and noise.
[0938] "Removing duplicate data" is the process of consolidating identical information that appears multiple times into a single entry.
[0939] "Noise filtering" is the process of removing irrelevant data and errors from search results.
[0940] "Extracting and summarizing key information" is the process of selecting the most relevant information for the user from aggregated data and summarizing it concisely.
[0941] "Generative AI" is artificial intelligence that generates natural language responses based on given data or prompts.
[0942] "User's device" refers to a device such as a computer, smartphone, or tablet that a user uses to access the internet or the system.
[0943] This invention relates to a search system that allows users to efficiently search for information and quickly obtain the data they need. The system consists of a server, a user terminal, a natural language processing engine, a database, and a generative AI. Specifically, the following hardware and software are used. A general network server can be used as the server, and user terminals include computers, smartphones, and tablets. The software includes a natural language processing engine (e.g., BERT), a database management system (e.g., PostgreSQL, MySQL), and a generative AI (e.g., GPT-4).
[0944] The server first receives a search request from the user's terminal. This request is sent in text format entered into the search box. The server then uses a natural language processing engine to parse the input text. This parsing process includes text tokenization, part-of-speech tagging, and naming entity recognition (NER), identifying the necessary keywords. Next, the server generates a search query based on the identified keywords and sends it to multiple databases. The databases search for corresponding information and return the results to the server. The server aggregates the returned results, removing duplicate data, filtering out noise, and extracting and summarizing important information. The aggregated information is then generated as a natural language response using generative AI. Finally, the generated response is sent to the user's terminal, allowing the user to review the results.
[0945] As a concrete example, consider a scenario where a user enters "Tell me the price and features of the new product" into the portal's search bar. Upon receiving this request, the server uses a natural language processing engine to extract the keywords "new product," "price," and "features." The server then generates a database search query based on these keywords and sends it to the product information database and the price database. The information returned from each database is aggregated, and duplicate and noisy data is removed. Finally, a natural language sentence is generated using generative AI, such as "The price of the new product X is Y yen, and its features are Z." This response is sent to the user's terminal, allowing the user to view the results.
[0946] An example of a prompt message to give instructions to a generative AI is as follows: "Based on this data, please generate a response in the following format: 'Product name: ○○, Price: △△ yen, Features: □□'."
[0947] In this way, the search system based on the present invention enables users to efficiently acquire information and quickly confirm the necessary data. Furthermore, it enables the provision of 24-hour service, significantly improving user convenience.
[0948] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0949] Step 1:
[0950] The user enters "Tell me the price and features of the new product" into the portal's search bar.
[0951] Input: User text input
[0952] Specific action: The user enters a question into the search bar of a web browser or application and presses the submit button.
[0953] Output: The search request is sent to the server.
[0954] Step 2:
[0955] The server receives user input and recognizes it as a search request.
[0956] Input: User-entered text: "Tell me the price and features of the new product."
[0957] Specific operation: The server receives an HTTP request and extracts the user's input text from the request body.
[0958] Output: The extracted text is sent to the natural language processing engine.
[0959] Step 3:
[0960] The server uses a natural language processing engine (e.g., BERT) to parse the search request.
[0961] Input: Extracted user input text
[0962] Specific operation: The server sends text to the natural language processing engine, which performs tokenization, part-of-speech tagging, naming entity recognition (NER), etc.
[0963] Output: The analysis results in a keyword list. For example, the keywords "new product," "price," and "features" are identified.
[0964] Step 4:
[0965] The server generates a query for database searching based on the identified keywords.
[0966] Input: Keyword list
[0967] Specific operation: The server generates search queries, such as SQL queries, based on keywords. For example, "SELECT FROM products WHERE category='New Products' AND attributes IN ('Price', 'Features')"
[0968] Output: The generated search query is obtained.
[0969] Step 5:
[0970] The server sends the generated search query to multiple databases (for example, a product information database, a pricing database).
[0971] Input: Generated search query
[0972] Specific operation: The server sends the generated query to the database management system and retrieves the corresponding data.
[0973] Output: Search results are returned from each database.
[0974] Step 6:
[0975] The server aggregates search results obtained from multiple databases.
[0976] Input: Search results from database
[0977] Specific operation: The server integrates the results received from multiple databases and creates a single response dataset.
[0978] Output: Aggregated search results are obtained.
[0979] Step 7:
[0980] The server removes duplicate data, filters out noisy data, and extracts and summarizes important information.
[0981] Input: Aggregated search results
[0982] Specific operation: The server removes duplicate entries, filters out unnecessary data (noise), and extracts and summarizes important information.
[0983] Output: Filtered and summarized search results are obtained.
[0984] Step 8:
[0985] The server uses a generative AI (e.g., GPT-4) to generate aggregated information as a natural language response.
[0986] Input: Filtered and summarized search results
[0987] Specific operation: The server inputs the aggregation results into the generative AI, which then uses prompts to generate a natural language response.
[0988] Output: A generated natural language response is obtained. For example, the response is generated in the format, "The price of the new product X is Y yen, and its features are Z."
[0989] Step 9:
[0990] The server sends the generated response to the user's terminal.
[0991] Input: Generated natural language response
[0992] Specific operation: The server sends the generated natural language response to the user's terminal as an HTTP response.
[0993] Output: The user can check the results on their device.
[0994] (Application Example 1)
[0995] Next, we will explain Application Example 1. In the following explanation, 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."
[0996] Current inventory management and work instructions in factories rely on manual processes and existing basic digital tools, resulting in low efficiency. Furthermore, obtaining real-time information is difficult, and there is a need for a means to quickly acquire necessary information. Additionally, there is a lack of interfaces that allow workers to immediately grasp the information they need.
[0997] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[0998] In this invention, the server includes means for receiving requests from users through a search window or voice input means, means for analyzing input text using a natural language processing engine, means for sending the generated search query to multiple databases, means for aggregating the search results obtained from each database, means including a generative AI that generates the aggregated search results as a natural language response, means for sending the generated response to the user's terminal or display device, means including a voice recognition function, and means for using a display device as a user interface. As a result, users can obtain necessary information in real time by voice input, which significantly improves inventory management and work efficiency within the factory.
[0999] A "search bar" is an interface for users to enter text-based requests.
[1000] A "voice input device" is a device that allows a user to input a request using their voice.
[1001] A "natural language processing engine" is a program that analyzes input text and understands its meaning.
[1002] A "search query" is a set of instructions created to retrieve specific information from a database.
[1003] A "database" is a system that stores organized data and provides it in a searchable format.
[1004] "Aggregation" is the process of combining information obtained from multiple data sources into a single entity.
[1005] "Generative AI" is artificial intelligence that generates responses in natural language from aggregated information.
[1006] A "user's terminal" is a device that a user operates and uses to receive information.
[1007] A "display device" is a device used to visually display information.
[1008] In order to implement this invention, the following system is required. The system is a search system in which the user inputs a request using a search window or voice input means, and the system analyzes it to provide the desired information.
[1009] hardware
[1010] Smart glasses: Display devices that allow users to visually confirm information (e.g., Google Glass, Vuzix Blade).
[1011] Voice input microphone: A device that acquires the user's voice as input.
[1012] software
[1013] Speech recognition engine (e.g., speech_recognition library): Converts speech input into text.
[1014] Natural language processing engine (e.g., transformers library): Analyzes input text and generates search queries.
[1015] Database access libraries (e.g., the requests library): Send generated search queries to the database and retrieve results.
[1016] Generative AI models: These models generate natural language responses based on acquired data.
[1017] Operating Procedure
[1018] 1. Enter the user's search request:
[1019] The user speaks into the microphone of their smart glasses and says, "Tell me the stock status of part X."
[1020] 2. Speech recognition:
[1021] The server uses a speech recognition engine to convert speech into text.
[1022] 3. Natural Language Processing:
[1023] The server uses a natural language processing engine to analyze the text and generate search queries from the extracted keywords.
[1024] 4. Querying the database:
[1025] The server generates search queries and sends them to the database to retrieve inventory and location information.
[1026] 5. Response generation using generative AI:
[1027] Based on the information acquired by the server, a generative AI model is used to generate a response in natural language.
[1028] 6. Results display:
[1029] The server displays the generated response on the smart glasses' screen for the user to confirm.
[1030] Specific example
[1031] For example, if a user in a factory uses voice input to request "What is the inventory of part X?", the server converts the voice into text, extracts the keywords "part X" and "inventory," and generates a search query. This is sent to the database, which returns information such as "There are 50 units of part X in stock, and they are located in warehouse B." Based on this information, the server uses a generative AI model to generate a natural language response, "There are 50 units of part X in stock, and they are located in warehouse B," which is then displayed on the smart glasses' screen.
[1032] Examples of prompt messages include the following:
[1033] "Please tell me the stock status of part X."
[1034] This allows users to quickly obtain the information they need in real time, significantly improving inventory management and operational efficiency within the factory.
[1035] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[1036] Step 1:
[1037] The user speaks into the smart glasses' microphone and says, "Tell me the stock status of part X." This voice data is then input.
[1038] Step 2:
[1039] The server uses a speech recognition engine (speech_recognition library) to convert the user's voice data into text data. The converted text data is then output.
[1040] Step 3:
[1041] The server uses a natural language processing engine (transformers library) to analyze the converted text data. During the analysis, the keywords "part X" and "inventory" are extracted, and a search query is generated. This search query is then output.
[1042] Step 4:
[1043] The server sends the generated search query to the database using the database access library (requests library). Specifically, it sends the keywords "part X" and "inventory" as query parameters and makes an API request to search for the corresponding record.
[1044] Step 5:
[1045] The database retrieves information corresponding to the query (e.g., inventory quantity and location information) and returns it to the server. This search result is then output.
[1046] Step 6:
[1047] The server uses a generative AI model to generate a natural language response from the retrieved search results. For example, a response in the format "There are 50 units of part X in stock, and they are located in warehouse B" is generated. This generated response is then output.
[1048] Step 7:
[1049] The server sends the generated response to the smart glasses' display device. The user can view the results in real time on the smart glasses' display. The sent response is displayed to the user.
[1050] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[1051] This invention relates to a search system that allows users to efficiently search for information and quickly obtain the data they need. This search system receives a request entered by the user into a search box, analyzes it using a natural language processing engine, and sends the generated search query to multiple databases. The results obtained from each database are aggregated, and a generative AI processes them into a natural language response. Furthermore, by combining this with an emotion engine that recognizes emotions from the user's input text, and adjusting the presentation method of search results based on the recognized emotions, more personalized and effective information delivery becomes possible. Finally, the generated response is sent to the user's terminal, and the results are displayed.
[1052] System program and processing description
[1053] 1. Enter the user's search request.
[1054] The user enters "Tell me the price and features of the new product" into the portal's search bar.
[1055] The server receives user input and recognizes it as a search request.
[1056] 2. Emotion recognition by an emotion engine
[1057] The server uses an emotion engine to analyze the sentiment of the input text. For example, it might identify emotion categories such as "joy," "anger," "sadness," or "surprise."
[1058] Example: "Interests" (positive emotions) are identified from user input.
[1059] 3. Analysis using a natural language processing engine
[1060] The server uses a natural language processing engine to parse the search request. The parsing includes the following processes:
[1061] Tokenization: Divides the input text into words or phrases.
[1062] Part-of-speech tagging: Identify the part of speech of each word and tag it.
[1063] Naming Entity Recognition (NER): Identifies proper nouns and important information within text.
[1064] For example, keywords such as "new product," "price," and "features" might be identified.
[1065] 4. Generating search queries
[1066] The server generates a query for database searching based on the identified keywords.
[1067] For example, a search query is generated that includes price and features related to "new products".
[1068] 5. Querying the database
[1069] The server sends the generated search query to multiple internal databases (e.g., product information database, pricing database). The search request is made to each database in the appropriate query format.
[1070] 6. Retrieving search results from the database
[1071] The database performs a search based on the query received from the server and retrieves the corresponding data. Each database returns the search results to the server.
[1072] 7. Aggregation of search results
[1073] The server aggregates search results obtained from multiple databases. This aggregation process includes the following steps:
[1074] Filtering noisy data: Removes unnecessary data.
[1075] Duplicate data removal: Consolidate or delete data with identical content.
[1076] Extracting essential information: Extract only the information necessary for the user.
[1077] 8. Response generation using generative AI
[1078] The server uses generative AI to generate aggregated information as a natural language response. The presentation method and content are adjusted based on recognized emotions.
[1079] For example, a response in the format of "The new product X is priced at Y yen and has features Z. We believe this product will suit your interests" will be generated.
[1080] 9. Sending a response
[1081] The server sends the generated natural language response to the user's terminal. The response is sent in a format that can be displayed through a web browser or a dedicated application.
[1082] 10. User result verification
[1083] The user checks the response sent from the server on their device. For example, the response may be displayed below the search bar or in the results display area.
[1084] Specific example
[1085] Example 1: Internal search
[1086] 1. The user enters "Recent project progress" into the portal's search bar.
[1087] 2. The server receives the input, and the emotion engine analyzes the user's text to identify "concerns" (negative emotions).
[1088] 3. The server uses a natural language processing engine to extract the keywords "project" and "progress."
[1089] 4. The server generates queries related to "project progress" and sends them to multiple databases.
[1090] 5. The database returns information, and the server aggregates it.
[1091] 6. The generative AI generates a response in the format of "Project A is 80% complete, Project B is 60% complete."
[1092] 7. The server generates a response that is adjusted to provide a sense of security based on the emotion recognition information, and sends it to the user's terminal.
[1093] 8. Users can check the progress on their devices with peace of mind.
[1094] Example 2: External Portal
[1095] 1. The user enters "Tell me the price and features of the new product" into the portal.
[1096] 2. The server receives the input, and the emotion engine analyzes the user's text to identify their emotions and determine their "interests" (positive emotions).
[1097] 3. The server uses a natural language processing engine to extract the keywords "new product," "price," and "features."
[1098] 4. The server generates a query related to "the price and features of the new product" and sends it to the product information database.
[1099] 5. The database returns information, and the server aggregates it.
[1100] 6. The generative AI generates a response in the format: "The price of the new product X is Y yen, and its features are Z. We believe this product will suit your interests."
[1101] 7. The server sends the generated response to the user's terminal.
[1102] 8. Users check the price and features while showing interest on their device.
[1103] In this way, the search system based on the present invention can recognize the user's emotions and provide information accordingly, thereby enriching the user experience and improving convenience. It also contributes to increasing the operational efficiency of companies and improving customer satisfaction.
[1104] The following describes the processing flow.
[1105] Step 1:
[1106] The user enters a search request (e.g., "Tell me the price and features of the new product") into the portal's search box.
[1107] Step 2:
[1108] The server receives a search request from the user. At this point, the entered text data is sent to the server.
[1109] Step 3:
[1110] The server activates the emotion engine, analyzes the user's input text, and recognizes emotions. For example, "interest" (a positive emotion) might be identified from the text.
[1111] Step 4:
[1112] The server passes the search request to the natural language processing engine and begins the analysis. The analysis includes the following processes:
[1113] Tokenization: Divides the input text into words or phrases.
[1114] Part-of-speech tagging: Identify the part of speech of each word and tag it.
[1115] Naming Entity Recognition (NER): Identifies proper nouns and important information within text.
[1116] Step 5:
[1117] The server generates search queries from the results analyzed by the natural language processing engine. For example, it constructs queries based on keywords such as "new product," "price," and "features."
[1118] Step 6:
[1119] The server sends the generated search query to multiple databases (e.g., product information database, pricing database). The search request is made to each database in the appropriate query format.
[1120] Step 7:
[1121] The database performs a search based on the query received from the server and retrieves the corresponding data. Each database returns the search results to the server.
[1122] Step 8:
[1123] The server receives search results from multiple databases and aggregates them. This aggregation process includes the following steps:
[1124] Filtering noisy data: Removes unnecessary data.
[1125] Duplicate data removal: Consolidate or delete data with identical content.
[1126] Extracting essential information: Extract only the information necessary for the user.
[1127] Step 9:
[1128] The server uses generative AI to generate natural language responses based on aggregated search results. The expression and content of the responses are adjusted based on recognized emotions. For example, a response in the format of "New product X is priced at Y yen and has features Z. We think this product will suit your interests" is generated.
[1129] Step 10:
[1130] The server sends the generated response to the user's terminal. The response is sent in a format that can be displayed through a web browser or a dedicated application.
[1131] Step 11:
[1132] The user sees the response sent from the server on their device. For example, the response is displayed below the search bar or in the results display area. Because this response is tailored to the user's emotions, the user experience is improved.
[1133] This processing flow allows users to quickly and efficiently obtain the necessary information and proceed with their work smoothly. Furthermore, user satisfaction is improved because user emotions are recognized and optimal information is provided based on those emotions.
[1134] (Example 2)
[1135] Next, we will describe Example 2. 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."
[1136] Traditional search systems provided uniform results for user input, making it difficult to offer information that fully considered user emotions and intentions. Furthermore, they lacked the means to efficiently aggregate information from multiple databases and effectively generate responses. Improving the user experience required recognizing individual user emotions and adjusting the presentation and content of search results accordingly. Additionally, search results often included irrelevant data, increasing the time and effort users had to access useful information.
[1137] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[1138] In this invention, the server includes means for receiving a request entered by the user into a search box, means for analyzing the input text using a natural language processing engine, means for identifying emotions from the input text using an emotion engine, means for sending the generated search query to multiple databases, means for aggregating the search results obtained from each database, means including a generative AI that generates the aggregated search results as a natural language response, means for adjusting the method of presenting the search results based on the emotion recognition result, and means for sending the generated response to the user's terminal. This makes it possible to present individual search results according to the user's emotions, enabling efficient and personalized information provision. Furthermore, by filtering out noise data and extracting important information, it becomes possible for users to quickly and reliably access the information they are looking for.
[1139] A "user" is a person who uses a system to enter a search request and receive the results.
[1140] A "search box" is an interface for users to enter search requests.
[1141] A "server" is a computer system that manages and executes the process from receiving search requests to generating search result responses.
[1142] A "natural language processing engine" is a software component that analyzes input text and extracts meaning and important information.
[1143] An "emotion engine" is a software component that analyzes and identifies emotions from user input text.
[1144] A "search query" is a series of instructions generated to retrieve information from a database.
[1145] A "database" is a system that systematically stores and manages information and provides data in response to queries.
[1146] "Aggregation" is the process of integrating information obtained from multiple databases to construct results that meet a specific purpose.
[1147] "Generative AI" refers to artificial intelligence that generates natural language responses based on aggregated search results.
[1148] "Noise data" refers to unnecessary data or misinformation included in search results.
[1149] "Extracting important information" is the process of selecting information from search results that is useful and important to the user.
[1150] "Method of presenting search results" refers to the format and method used to display search results to the user.
[1151] A "natural language response" is a text-based response generated in a format that is easy for humans to understand.
[1152] A "device" is a device that a user uses to enter a search request and receive search results.
[1153] This invention relates to a search system for efficiently and personally processing user search requests. The system includes the following main components:
[1154] 1. Entering and receiving search requests
[1155] The user enters a search request into the search box on the device. An example of this input is, "Tell me the price and features of the new product." The device receives this input and sends it to the server.
[1156] 2. Sentiment analysis
[1157] The server uses an emotion engine to identify emotions from the input text. This emotion engine has the ability to identify emotion categories such as "joy," "anger," "sadness," and "surprise." For example, if the user inputs "Tell me the price and features of the new product," the emotion engine will identify the positive emotion of "interest."
[1158] 3. Natural Language Processing
[1159] The server uses a natural language processing engine to analyze the input text. The natural language processing engine includes functions such as tokenization, which divides the text into words and phrases; part-of-speech tagging, which identifies and tags the part of speech of words; and naming entity recognition (NER), which identifies proper nouns and important information. For example, keywords such as "new product," "price," and "features" may be extracted.
[1160] 4. Generating search queries
[1161] The server generates queries for database searches based on the extracted keywords. The query generation engine performs this process and constructs appropriate search queries. For example, a search query containing "price of new product X" and "features of new product X" is generated.
[1162] 5. Querying the database
[1163] The server sends the generated queries to multiple databases, including product information databases and pricing databases, and the search requests are sent to each database in the appropriate format.
[1164] 6. Retrieving and aggregating search results
[1165] The database retrieves information in response to a query and returns the results to the server. The server aggregates these search results and performs the following processing.
[1166] Filtering noisy data: Removes unnecessary data.
[1167] Duplicate data removal: Consolidate or delete data with identical content.
[1168] Extracting important information: Extract only the information that is useful to the user.
[1169] 7. Response generation
[1170] The server uses generative AI to generate natural language responses based on aggregated information. The generative AI adjusts the content and presentation of the response based on the emotion recognition results. For example, a response such as, "The price of the new product X is Y yen, and its features are Z. We think this product will suit your interests," might be generated.
[1171] 8. Sending and displaying responses
[1172] The server sends the generated response to the user's terminal. The terminal displays this response, allowing the user to verify the result.
[1173] Example of a prompt
[1174] Prompt example:
[1175] A user entered "Tell me the price and features of the new product" into the portal. The server performed sentiment recognition and identified "interest." Based on the information retrieved from the search database, generate a response in natural language. The response should be in a format that will capture the user's interest.
[1176] This prompt is used as input to a generative AI model, which then generates an appropriate response based on the relevant information. This allows the search system to provide more personalized search results that are more sensitive to the user's emotions.
[1177] The flow of the specific processing in Example 2 will be explained using Figure 13.
[1178] Step 1:
[1179] Entering and submitting a search request
[1180] The user enters a search request into the device's search bar and presses the send button. An example of this input is "Tell me the price and features of the new product." The device sends this request to the server. The input data is the text entered by the user, and the output data is the search request sent to the server.
[1181] Step 2:
[1182] emotion recognition
[1183] The server passes the received search request to the sentiment engine. The sentiment engine analyzes the emotions in the text entered by the user. For example, emotions such as "interest" may be identified. The input data is the user's search request, and the output data is the identified emotion information. Specifically, the sentiment engine executes an algorithm to identify emotion categories such as "joy," "anger," "sadness," and "surprise."
[1184] Step 3:
[1185] Natural Language Processing
[1186] The server passes the search request to a natural language processing engine for analysis. The natural language processing engine tokenizes the text, tags parts of speech, and performs naming entity recognition (NER). The input data is the user's search request, and the output data is the analyzed tokens, tags, and entity information. Specific operations include extracting keywords such as "new product," "price," and "features."
[1187] Step 4:
[1188] Generating search queries
[1189] The server generates a database search query based on the analyzed keywords. The query generation engine uses an internal algorithm to construct an appropriate search query. The input data is the analyzed keyword information, and the output data is the generated search query. Specifically, a query is generated that includes "the price of new product X" and "the features of new product X".
[1190] Step 5:
[1191] Database query
[1192] The server sends the generated search query to multiple databases. These databases include product information and pricing databases. A search request is made to each database in the appropriate format. The input data is the generated search query, and the output data is the search results from the databases. This process involves accessing the databases via an internal API.
[1193] Step 6:
[1194] Retrieving and aggregating search results
[1195] The database performs a search based on the search query received from the server and retrieves the corresponding data. Each database returns its search results to the server, which then aggregates them. The input data consists of search results from multiple databases, and the output data is the aggregated search results. Specific operations include filtering out noisy data, removing duplicate data, and extracting important information.
[1196] Step 7:
[1197] Natural Language Response Generation
[1198] The server uses generative AI to generate natural language responses based on aggregated search results. The generative AI adjusts the content and presentation of the response based on sentiment recognition results. The input data consists of aggregated search results and sentiment information, while the output data is the generated natural language response. Specifically, it generates responses in the format of, "The new product X is priced at Y yen and has features Z. We believe this product will be of interest to you."
[1199] Step 8:
[1200] Sending and displaying responses
[1201] The server sends the generated natural language response to the user's device. The device displays the received response to the user. The input data is the generated natural language response, and the output data is the response displayed to the user. Specifically, the server sends the response data via the API, and the device displays that data on its screen.
[1202] (Application Example 2)
[1203] Next, we will explain application example 2. In the following explanation, 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."
[1204] Traditional search systems can efficiently provide information in response to user requests, but they lack the ability to generate personalized responses based on user emotions. As a result, the user experience is not improved, and efficient information retrieval is difficult. Furthermore, the quality and display of search results are uniform, which presents a challenge in providing optimal information tailored to the user's emotions and situation.
[1205] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.
[1206] In this invention, the server includes means for receiving a request entered by the user into a search box, means for analyzing the entered text using a natural language processing engine, means for sending the generated search query to multiple databases, means for aggregating the search results obtained from each database, means including a generative AI that generates the aggregated search results as a natural language response, means including an emotion engine that recognizes emotions from the user's input text and adjusts the presentation method, and means for sending and displaying the generated response on the user's terminal. This makes it possible to provide search results optimized based on the user's emotions.
[1207] "User" refers to an individual or group that uses the system.
[1208] A "search box" refers to an input field where a user enters a search request.
[1209] A "natural language processing engine" refers to a software module that analyzes text entered by a user and understands its meaning and structure.
[1210] "Methods of analysis" refers to the process of tokenizing the text entered by the user and performing part-of-speech tagging and naming entity recognition.
[1211] A "search query" refers to a statement of inquiry generated based on a user's request, used to retrieve information from a database.
[1212] A "database" refers to a collection of structured information used to respond to search queries.
[1213] "Methods of aggregation" refers to the process of combining search results obtained from multiple databases into a single one.
[1214] "Generative AI" refers to artificial intelligence that generates responses in natural language format based on aggregated search results.
[1215] An "emotion engine" refers to a software module that has the function of analyzing and recognizing emotions from the user's input text.
[1216] "Adjusting the presentation method" refers to changing the display format and content of search results based on user sentiment.
[1217] "Means for sending a response to the user's terminal" refers to the communication means and software used to send and display the generated natural language response to the user's terminal.
[1218] This invention is a search system that provides efficient and personalized information in response to user search requests. This system receives requests entered by the user into a search box, analyzes those requests, and generates appropriate search results.
[1219] The server first receives a request entered by the user in the search box. Once the request is received, it uses a natural language processing engine to parse the text. The parsing includes tokenization, part-of-speech tagging, and naming entity recognition. This identifies important keywords and phrases.
[1220] Next, the server sends the generated search query to multiple databases. Each database returns relevant search results based on the received query. The server aggregates the results from the multiple databases, filters out noisy data, removes duplicate data, and extracts important information.
[1221] Based on aggregated search results, a generative AI generates responses in natural language. This process incorporates an emotion engine to recognize emotions from the user's input text. For example, if the user indicates emotions such as "interest" or "concern," the AI adjusts the response accordingly, providing personalized and effective information.
[1222] The generated response is sent to the user's device and provided in a displayable format. This response is optimized according to the user's emotions to improve the user experience.
[1223] As a concrete example of this system, let's consider the case where a user types "Recommend a new smartphone" into the search bar of their smartphone. Upon receiving this search request, the emotion engine identifies a positive emotion, "interest." The natural language processing engine analyzes the text and generates keywords such as "new smartphone" and "recommendation." The generated search query is then sent to multiple databases, and relevant information is aggregated. The generative AI generates a response, for example, "The new smartphone X costs Y yen and has Z features. We think this smartphone will match your interests," and sends it to the user's device.
[1224] Here are some examples of specific prompt messages:
[1225] User types "Recommend a new smartphone": Emotion is "Interested," search keywords are "new smartphone" and "recommendation." What response is generated?
[1226] In this way, by recognizing the user's emotions and providing information accordingly, it is possible to improve the user experience and enable efficient information retrieval.
[1227] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[1228] Step 1:
[1229] The user enters a request into the search box.
[1230] The user enters "Tell me your recommendations for a new smartphone" into the search bar. The input text is sent to the server. The input data is "Tell me your recommendations for a new smartphone," and this text is parsed in the next processing step.
[1231] Step 2:
[1232] The server uses an emotion engine to analyze the sentiment of the input text.
[1233] The server receives the input text and uses its emotion engine to identify the "interest" (positive emotion). The input data is the text "Tell me your recommendations for a new smartphone" from Step 1, and the output is the emotion "interest".
[1234] Step 3:
[1235] The server uses a natural language processing engine to analyze the text and extract keywords.
[1236] The server uses a natural language processing engine to extract the keywords "new smartphone" and "recommendation". The input data is the text from Step 1, "Tell me your recommendations for a new smartphone," and the output is a list of keywords, "new smartphone" and "recommendation."
[1237] Step 4:
[1238] The server generates search queries based on the keywords that have been generated.
[1239] The server generates a search query for the database based on the keywords. The input data is the keywords "new smartphone" and "recommended" from step 3, and the output is the database search query "SELECT FROM products WHERE category='smartphone' AND feature='recommended'".
[1240] Step 5:
[1241] The server sends the generated search query to multiple databases.
[1242] The server sends the search query to multiple databases and retrieves relevant information. The input data is the search query "SELECT FROM products WHERE category='smartphone' AND feature='recommended'" from step 4, and the output is a list of search results retrieved from the databases.
[1243] Step 6:
[1244] The server aggregates search results obtained from multiple databases.
[1245] The server consolidates the retrieved search results, filters out noisy data, removes duplicate data, and extracts important information. The input data is the list of search results obtained in step 5, and the output is the aggregated search results.
[1246] Step 7:
[1247] The server uses generative AI to aggregate search results and generate natural language responses.
[1248] The server generates a natural language response based on the aggregated search results. During this process, it adjusts the presentation of the response based on the emotion identified by the emotion engine, namely "interest." The input data is the aggregated search results from step 6, and the output is the generated natural language response: "The new smartphone X costs Y yen and has Z features. We believe this smartphone will match your interests."
[1249] Step 8:
[1250] The server sends the generated response to the user's terminal.
[1251] The server sends the generated natural language response to the user's terminal for display. The input data is the generated natural language response from step 7, and the output is the response displayed on the user's terminal.
[1252] The specific processing unit 290 transmits the result of the specific processing to the headset terminal 314. In the headset terminal 314, the control unit 46A causes the speaker 240 and display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.
[1253] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1254] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and specific processing may also be performed by the headset terminal 314.
[1255] [Fourth Embodiment]
[1256] Figure 7 shows an example of the configuration of the data processing system 410 according to the fourth embodiment.
[1257] As shown in Figure 7, the 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.
[1258] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[1259] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication interface 44, and a controlled object 443. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, camera 42, and controlled object 443 are also connected to the bus 52.
[1260] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[1261] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[1262] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[1263] The controlled object 443 includes a display device, LEDs in the eyes, and motors that drive 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 robot 414's emotions can be expressed by controlling these motors. Furthermore, the robot 414's facial expressions can also be expressed by controlling the illumination state of the LEDs in its eyes.
[1264] Figure 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Figure 8, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[1265] The specific processing program 56 is an example of a "program" relating to the technology of this 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.
[1266] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[1267] In robot 414, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. 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 processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[1268] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1269] This invention relates to a search system that allows users to efficiently search for information and quickly obtain the data they need. This search system receives a request entered by the user into a search box, analyzes it using a natural language processing engine, and sends the generated search query to multiple databases. The results obtained from each database are aggregated, and a generative AI processes them into a natural language response. Finally, the generated response is sent to the user's terminal, and the results are displayed.
[1270] System program and processing description
[1271] 1. Enter the user's search request.
[1272] The user enters "Tell me the price and features of the new product" into the portal's search bar.
[1273] The server receives user input and recognizes it as a search request.
[1274] 2. Analysis using a natural language processing engine
[1275] The server uses a natural language processing engine to parse the search request. The parsing process includes text tokenization, part-of-speech tagging, and naming entity recognition (NER).
[1276] For example, keywords such as "new product," "price," and "features" might be identified.
[1277] 3. Generating search queries
[1278] The server generates a query for database searching based on the identified keywords.
[1279] For example, a search query is generated that includes price and features related to "new products".
[1280] 4. Querying the database
[1281] The server sends the generated search query to multiple databases (e.g., a product information database, a pricing database).
[1282] Each database searches for the corresponding information and returns the results to the server.
[1283] 5. Aggregation of search results
[1284] The server aggregates search results obtained from multiple databases.
[1285] Duplicate data is removed, and noisy data is filtered.
[1286] Extract and summarize important information as needed.
[1287] 6. Response generation using generative AI
[1288] The server uses generative AI to generate aggregated information as a natural language response.
[1289] For example, a response is generated in the format, "The price of the new product X is Y yen, and its features are Z."
[1290] 7. Sending a response
[1291] The server sends the generated response to the user's terminal.
[1292] The user can view the results on their device. For example, the response may be displayed through a web browser or a dedicated application.
[1293] Specific example
[1294] Example 1: Internal search
[1295] 1. The user enters "Recent project progress" into the portal's search bar.
[1296] 2. The server receives the input, and the natural language processing engine extracts the keywords "project" and "progress."
[1297] 3. The server generates queries related to "project progress" and sends them to multiple databases.
[1298] 4. The database returns the information, and the server aggregates it.
[1299] 5. The generative AI generates the response, "Project A is 80% complete, Project B is 60% complete."
[1300] 6. The server sends a response to the user's terminal, and the user confirms it.
[1301] Example 2: External Portal
[1302] 1. The user enters "Tell me the price and features of the new product" into the portal.
[1303] 2. The server receives the input, and the natural language processing engine extracts the keywords "new product," "price," and "features."
[1304] 3. The server generates a query related to "the price and features of the new product" and sends it to the product information database.
[1305] 4. The database returns the information, and the server aggregates it.
[1306] 5. The generative AI generates the response, "The price of the new product X is Y yen, and its features are Z."
[1307] 6. The server sends a response to the user's terminal, and the user confirms it.
[1308] In this way, the search system based on the present invention enables users to efficiently acquire information and quickly confirm the necessary data. Furthermore, it enables the provision of 24-hour service, significantly improving user convenience.
[1309] The following describes the processing flow.
[1310] Step 1:
[1311] The user enters a search request (e.g., "Recent project progress") into the portal's search box.
[1312] Step 2:
[1313] The server receives a search request from the user. At this point, the entered text data is sent to the server.
[1314] Step 3:
[1315] The server passes the search request to the natural language processing engine and begins the analysis. The analysis includes the following processes:
[1316] Tokenization: Divides the input text into words or phrases.
[1317] Part-of-speech tagging: Identify the part of speech of each word and tag it.
[1318] Naming Entity Recognition (NER): Identifies proper nouns and important information within text.
[1319] Step 4:
[1320] The server generates search queries from the results analyzed by the natural language processing engine. For example, search queries corresponding to "recent projects" and "progress" are generated.
[1321] Step 5:
[1322] The server sends the generated search query to multiple internal databases (e.g., project management database, HR database). The search request is made to each database in the appropriate query format.
[1323] Step 6:
[1324] The database performs a search based on the query received from the server and retrieves the corresponding data. Each database returns the search results to the server.
[1325] Step 7:
[1326] The server receives search results from multiple databases and aggregates them. This aggregation process includes the following steps:
[1327] Filtering noisy data: Removes unnecessary data.
[1328] Duplicate data removal: Consolidate or delete data with identical content.
[1329] Extracting essential information: Extract only the information necessary for the user.
[1330] Step 8:
[1331] Based on the aggregated search results, the server uses generative AI to generate natural language responses. For example, a response in the format "Project A is 80% complete, Project B is 60% complete" might be generated.
[1332] Step 9:
[1333] The server sends the generated natural language response to the user's terminal. The response is sent in a format that can be displayed through a web browser or a dedicated application.
[1334] Step 10:
[1335] The user checks the response sent from the server on their device. For example, the response may be displayed below the search bar or in the results display area.
[1336] This processing flow allows users to quickly and efficiently obtain the necessary information and proceed with their work smoothly.
[1337] (Example 1)
[1338] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1339] In today's internet environment, it is crucial for users to quickly and accurately obtain the information they seek. However, conventional search systems have low accuracy in parsing input text and insufficient aggregation of search results. As a result, users have had to spend a lot of time manually organizing information. Furthermore, search results often contain a lot of noisy and duplicate data, making it difficult to find the necessary information. There is a need to solve these problems and provide a more efficient and accurate information retrieval system.
[1340] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[1341] In this invention, the server includes means for receiving a request entered by the user into a search box, means for analyzing the input text using a natural language processing engine, means for sending the generated search query to multiple databases, means for aggregating the search results obtained from each database, means for removing duplicate data, filtering noise data, and extracting and summarizing important information, means including a generative AI that generates the aggregated search results as a natural language response, and means for sending the generated response to the user's terminal. This makes it possible to quickly provide highly accurate search results in response to the user's input request and to efficiently obtain the necessary information.
[1342] A "search bar" is an interface for users to enter text-based search questions.
[1343] A "natural language processing engine" is software that analyzes input text and understands its meaning and structure.
[1344] A "search query" is a request sent to a database to retrieve specific information.
[1345] A "database" is a system for efficiently managing, searching, and retrieving organized data.
[1346] "Aggregating search results" is the process of integrating information obtained from multiple databases and removing duplication and noise.
[1347] "Removing duplicate data" is the process of consolidating identical information that appears multiple times into a single entry.
[1348] "Noise filtering" is the process of removing irrelevant data and errors from search results.
[1349] "Extracting and summarizing key information" is the process of selecting the most relevant information for the user from aggregated data and summarizing it concisely.
[1350] "Generative AI" is artificial intelligence that generates natural language responses based on given data or prompts.
[1351] "User's device" refers to a device such as a computer, smartphone, or tablet that a user uses to access the internet or the system.
[1352] This invention relates to a search system that allows users to efficiently search for information and quickly obtain the data they need. The system consists of a server, a user terminal, a natural language processing engine, a database, and a generative AI. Specifically, the following hardware and software are used. A general network server can be used as the server, and user terminals include computers, smartphones, and tablets. The software includes a natural language processing engine (e.g., BERT), a database management system (e.g., PostgreSQL, MySQL), and a generative AI (e.g., GPT-4).
[1353] The server first receives a search request from the user's terminal. This request is sent in text format entered into the search box. The server then uses a natural language processing engine to parse the input text. This parsing process includes text tokenization, part-of-speech tagging, and naming entity recognition (NER), identifying the necessary keywords. Next, the server generates a search query based on the identified keywords and sends it to multiple databases. The databases search for corresponding information and return the results to the server. The server aggregates the returned results, removing duplicate data, filtering out noise, and extracting and summarizing important information. The aggregated information is then generated as a natural language response using generative AI. Finally, the generated response is sent to the user's terminal, allowing the user to review the results.
[1354] As a concrete example, consider a scenario where a user enters "Tell me the price and features of the new product" into the portal's search bar. Upon receiving this request, the server uses a natural language processing engine to extract the keywords "new product," "price," and "features." The server then generates a database search query based on these keywords and sends it to the product information database and the price database. The information returned from each database is aggregated, and duplicate and noisy data is removed. Finally, a natural language sentence is generated using generative AI, such as "The price of the new product X is Y yen, and its features are Z." This response is sent to the user's terminal, allowing the user to view the results.
[1355] An example of a prompt message to give instructions to a generative AI is as follows: "Based on this data, please generate a response in the following format: 'Product name: ○○, Price: △△ yen, Features: □□'."
[1356] In this way, the search system based on the present invention enables users to efficiently acquire information and quickly confirm the necessary data. Furthermore, it enables the provision of 24-hour service, significantly improving user convenience.
[1357] The flow of the specific processing in Example 1 will be explained using Figure 11.
[1358] Step 1:
[1359] The user enters "Tell me the price and features of the new product" into the portal's search bar.
[1360] Input: User text input
[1361] Specific action: The user enters a question into the search bar of a web browser or application and presses the submit button.
[1362] Output: The search request is sent to the server.
[1363] Step 2:
[1364] The server receives user input and recognizes it as a search request.
[1365] Input: User-entered text: "Tell me the price and features of the new product."
[1366] Specific operation: The server receives an HTTP request and extracts the user's input text from the request body.
[1367] Output: The extracted text is sent to the natural language processing engine.
[1368] Step 3:
[1369] The server uses a natural language processing engine (e.g., BERT) to parse the search request.
[1370] Input: Extracted user input text
[1371] Specific operation: The server sends text to the natural language processing engine, which performs tokenization, part-of-speech tagging, naming entity recognition (NER), etc.
[1372] Output: The analysis results in a keyword list. For example, the keywords "new product," "price," and "features" are identified.
[1373] Step 4:
[1374] The server generates a query for database searching based on the identified keywords.
[1375] Input: Keyword list
[1376] Specific operation: The server generates search queries, such as SQL queries, based on keywords. For example, "SELECT FROM products WHERE category='New Products' AND attributes IN ('Price', 'Features')"
[1377] Output: The generated search query is obtained.
[1378] Step 5:
[1379] The server sends the generated search query to multiple databases (for example, a product information database, a pricing database).
[1380] Input: Generated search query
[1381] Specific operation: The server sends the generated query to the database management system and retrieves the corresponding data.
[1382] Output: Search results are returned from each database.
[1383] Step 6:
[1384] The server aggregates search results obtained from multiple databases.
[1385] Input: Search results from database
[1386] Specific operation: The server integrates the results received from multiple databases and creates a single response dataset.
[1387] Output: Aggregated search results are obtained.
[1388] Step 7:
[1389] The server removes duplicate data, filters out noisy data, and extracts and summarizes important information.
[1390] Input: Aggregated search results
[1391] Specific operation: The server removes duplicate entries, filters out unnecessary data (noise), and extracts and summarizes important information.
[1392] Output: Filtered and summarized search results are obtained.
[1393] Step 8:
[1394] The server uses a generative AI (e.g., GPT-4) to generate aggregated information as a natural language response.
[1395] Input: Filtered and summarized search results
[1396] Specific operation: The server inputs the aggregation results into the generative AI, which then uses prompts to generate a natural language response.
[1397] Output: A generated natural language response is obtained. For example, the response is generated in the format, "The price of the new product X is Y yen, and its features are Z."
[1398] Step 9:
[1399] The server sends the generated response to the user's terminal.
[1400] Input: Generated natural language response
[1401] Specific operation: The server sends the generated natural language response to the user's terminal as an HTTP response.
[1402] Output: The user can check the results on their device.
[1403] (Application Example 1)
[1404] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1405] Current inventory management and work instructions in factories rely on manual processes and existing basic digital tools, resulting in low efficiency. Furthermore, obtaining real-time information is difficult, and there is a need for a means to quickly acquire necessary information. Additionally, there is a lack of interfaces that allow workers to immediately grasp the information they need.
[1406] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[1407] In this invention, the server includes means for receiving requests from users through a search window or voice input means, means for analyzing input text using a natural language processing engine, means for sending the generated search query to multiple databases, means for aggregating the search results obtained from each database, means including a generative AI that generates the aggregated search results as a natural language response, means for sending the generated response to the user's terminal or display device, means including a voice recognition function, and means for using a display device as a user interface. As a result, users can obtain necessary information in real time by voice input, which significantly improves inventory management and work efficiency within the factory.
[1408] A "search bar" is an interface for users to enter text-based requests.
[1409] A "voice input device" is a device that allows a user to input a request using their voice.
[1410] A "natural language processing engine" is a program that analyzes input text and understands its meaning.
[1411] A "search query" is a set of instructions created to retrieve specific information from a database.
[1412] A "database" is a system that stores organized data and provides it in a searchable format.
[1413] "Aggregation" is the process of combining information obtained from multiple data sources into a single entity.
[1414] "Generative AI" is artificial intelligence that generates responses in natural language from aggregated information.
[1415] A "user's terminal" is a device that a user operates and uses to receive information.
[1416] A "display device" is a device used to visually display information.
[1417] In order to implement this invention, the following system is required. The system is a search system in which the user inputs a request using a search window or voice input means, and the system analyzes it to provide the desired information.
[1418] hardware
[1419] Smart glasses: Display devices that allow users to visually confirm information (e.g., Google Glass, Vuzix Blade).
[1420] Voice input microphone: A device that acquires the user's voice as input.
[1421] software
[1422] Speech recognition engine (e.g., speech_recognition library): Converts speech input into text.
[1423] Natural language processing engine (e.g., transformers library): Analyzes input text and generates search queries.
[1424] Database access libraries (e.g., the requests library): Send generated search queries to the database and retrieve results.
[1425] Generative AI models: These models generate natural language responses based on acquired data.
[1426] Operating Procedure
[1427] 1. Enter the user's search request:
[1428] The user speaks into the microphone of their smart glasses and says, "Tell me the stock status of part X."
[1429] 2. Speech recognition:
[1430] The server uses a speech recognition engine to convert speech into text.
[1431] 3. Natural Language Processing:
[1432] The server uses a natural language processing engine to analyze the text and generate search queries from the extracted keywords.
[1433] 4. Querying the database:
[1434] The server generates search queries and sends them to the database to retrieve inventory and location information.
[1435] 5. Response generation using generative AI:
[1436] Based on the information acquired by the server, a generative AI model is used to generate a response in natural language.
[1437] 6. Results display:
[1438] The server displays the generated response on the smart glasses' screen for the user to confirm.
[1439] Specific example
[1440] For example, if a user in a factory uses voice input to request "What is the inventory of part X?", the server converts the voice into text, extracts the keywords "part X" and "inventory," and generates a search query. This is sent to the database, which returns information such as "There are 50 units of part X in stock, and they are located in warehouse B." Based on this information, the server uses a generative AI model to generate a natural language response, "There are 50 units of part X in stock, and they are located in warehouse B," which is then displayed on the smart glasses' screen.
[1441] Examples of prompt messages include the following:
[1442] "Please tell me the stock status of part X."
[1443] This allows users to quickly obtain the information they need in real time, significantly improving inventory management and operational efficiency within the factory.
[1444] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[1445] Step 1:
[1446] The user speaks into the smart glasses' microphone and says, "Tell me the stock status of part X." This voice data is then input.
[1447] Step 2:
[1448] The server uses a speech recognition engine (speech_recognition library) to convert the user's voice data into text data. The converted text data is then output.
[1449] Step 3:
[1450] The server uses a natural language processing engine (transformers library) to analyze the converted text data. During the analysis, the keywords "part X" and "inventory" are extracted, and a search query is generated. This search query is then output.
[1451] Step 4:
[1452] The server sends the generated search query to the database using the database access library (requests library). Specifically, it sends the keywords "part X" and "inventory" as query parameters and makes an API request to search for the corresponding record.
[1453] Step 5:
[1454] The database retrieves information corresponding to the query (e.g., inventory quantity and location information) and returns it to the server. This search result is then output.
[1455] Step 6:
[1456] The server uses a generative AI model to generate a natural language response from the retrieved search results. For example, a response in the format "There are 50 units of part X in stock, and they are located in warehouse B" is generated. This generated response is then output.
[1457] Step 7:
[1458] The server sends the generated response to the smart glasses' display device. The user can view the results in real time on the smart glasses' display. The sent response is displayed to the user.
[1459] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[1460] This invention relates to a search system that allows users to efficiently search for information and quickly obtain the data they need. This search system receives a request entered by the user into a search box, analyzes it using a natural language processing engine, and sends the generated search query to multiple databases. The results obtained from each database are aggregated, and a generative AI processes them into a natural language response. Furthermore, by combining this with an emotion engine that recognizes emotions from the user's input text, and adjusting the presentation method of search results based on the recognized emotions, more personalized and effective information delivery becomes possible. Finally, the generated response is sent to the user's terminal, and the results are displayed.
[1461] System program and processing description
[1462] 1. Enter the user's search request.
[1463] The user enters "Tell me the price and features of the new product" into the portal's search bar.
[1464] The server receives user input and recognizes it as a search request.
[1465] 2. Emotion recognition by an emotion engine
[1466] The server uses an emotion engine to analyze the sentiment of the input text. For example, it might identify emotion categories such as "joy," "anger," "sadness," or "surprise."
[1467] Example: "Interests" (positive emotions) are identified from user input.
[1468] 3. Analysis using a natural language processing engine
[1469] The server uses a natural language processing engine to parse the search request. The parsing includes the following processes:
[1470] Tokenization: Divides the input text into words or phrases.
[1471] Part-of-speech tagging: Identify the part of speech of each word and tag it.
[1472] Naming Entity Recognition (NER): Identifies proper nouns and important information within text.
[1473] For example, keywords such as "new product," "price," and "features" might be identified.
[1474] 4. Generating search queries
[1475] The server generates a query for database searching based on the identified keywords.
[1476] For example, a search query is generated that includes price and features related to "new products".
[1477] 5. Querying the database
[1478] The server sends the generated search query to multiple internal databases (e.g., product information database, pricing database). The search request is made to each database in the appropriate query format.
[1479] 6. Retrieving search results from the database
[1480] The database performs a search based on the query received from the server and retrieves the corresponding data. Each database returns the search results to the server.
[1481] 7. Aggregation of search results
[1482] The server aggregates search results obtained from multiple databases. This aggregation process includes the following steps:
[1483] Filtering noisy data: Removes unnecessary data.
[1484] Duplicate data removal: Consolidate or delete data with identical content.
[1485] Extracting essential information: Extract only the information necessary for the user.
[1486] 8. Response generation using generative AI
[1487] The server uses generative AI to generate aggregated information as a natural language response. The presentation method and content are adjusted based on recognized emotions.
[1488] For example, a response in the format of "The new product X is priced at Y yen and has features Z. We believe this product will suit your interests" will be generated.
[1489] 9. Sending a response
[1490] The server sends the generated natural language response to the user's terminal. The response is sent in a format that can be displayed through a web browser or a dedicated application.
[1491] 10. User result verification
[1492] The user checks the response sent from the server on their device. For example, the response may be displayed below the search bar or in the results display area.
[1493] Specific example
[1494] Example 1: Internal search
[1495] 1. The user enters "Recent project progress" into the portal's search bar.
[1496] 2. The server receives the input, and the emotion engine analyzes the user's text to identify "concerns" (negative emotions).
[1497] 3. The server uses a natural language processing engine to extract the keywords "project" and "progress."
[1498] 4. The server generates queries related to "project progress" and sends them to multiple databases.
[1499] 5. The database returns information, and the server aggregates it.
[1500] 6. The generative AI generates a response in the format of "Project A is 80% complete, Project B is 60% complete."
[1501] 7. The server generates a response that is adjusted to provide a sense of security based on the emotion recognition information, and sends it to the user's terminal.
[1502] 8. Users can check the progress on their devices with peace of mind.
[1503] Example 2: External Portal
[1504] 1. The user enters "Tell me the price and features of the new product" into the portal.
[1505] 2. The server receives the input, and the emotion engine analyzes the user's text to identify their emotions and determine their "interests" (positive emotions).
[1506] 3. The server uses a natural language processing engine to extract the keywords "new product," "price," and "features."
[1507] 4. The server generates a query related to "the price and features of the new product" and sends it to the product information database.
[1508] 5. The database returns information, and the server aggregates it.
[1509] 6. The generative AI generates a response in the format: "The price of the new product X is Y yen, and its features are Z. We believe this product will suit your interests."
[1510] 7. The server sends the generated response to the user's terminal.
[1511] 8. Users check the price and features while showing interest on their device.
[1512] In this way, the search system based on the present invention can recognize the user's emotions and provide information accordingly, thereby enriching the user experience and improving convenience. It also contributes to increasing the operational efficiency of companies and improving customer satisfaction.
[1513] The following describes the processing flow.
[1514] Step 1:
[1515] The user enters a search request (e.g., "Tell me the price and features of the new product") into the portal's search box.
[1516] Step 2:
[1517] The server receives a search request from the user. At this point, the entered text data is sent to the server.
[1518] Step 3:
[1519] The server activates the emotion engine, analyzes the user's input text, and recognizes emotions. For example, "interest" (a positive emotion) might be identified from the text.
[1520] Step 4:
[1521] The server passes the search request to the natural language processing engine and begins the analysis. The analysis includes the following processes:
[1522] Tokenization: Divides the input text into words or phrases.
[1523] Part-of-speech tagging: Identify the part of speech of each word and tag it.
[1524] Naming Entity Recognition (NER): Identifies proper nouns and important information within text.
[1525] Step 5:
[1526] The server generates search queries from the results analyzed by the natural language processing engine. For example, it constructs queries based on keywords such as "new product," "price," and "features."
[1527] Step 6:
[1528] The server sends the generated search query to multiple databases (e.g., product information database, pricing database). The search request is made to each database in the appropriate query format.
[1529] Step 7:
[1530] The database performs a search based on the query received from the server and retrieves the corresponding data. Each database returns the search results to the server.
[1531] Step 8:
[1532] The server receives search results from multiple databases and aggregates them. This aggregation process includes the following steps:
[1533] Filtering noisy data: Removes unnecessary data.
[1534] Duplicate data removal: Consolidate or delete data with identical content.
[1535] Extracting essential information: Extract only the information necessary for the user.
[1536] Step 9:
[1537] The server uses generative AI to generate natural language responses based on aggregated search results. The expression and content of the responses are adjusted based on recognized emotions. For example, a response in the format of "The new product X is priced at Y yen and has features Z. We think this product will suit your interests" is generated.
[1538] Step 10:
[1539] The server sends the generated response to the user's terminal. The response is sent in a format that can be displayed through a web browser or a dedicated application.
[1540] Step 11:
[1541] The user sees the response sent from the server on their device. For example, the response is displayed below the search bar or in the results display area. Because this response is tailored to the user's emotions, the user experience is improved.
[1542] This processing flow allows users to quickly and efficiently obtain the necessary information and proceed with their work smoothly. Furthermore, user satisfaction is improved because user emotions are recognized and optimal information is provided based on those emotions.
[1543] (Example 2)
[1544] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1545] Traditional search systems provided uniform results for user input, making it difficult to offer information that fully considered user emotions and intentions. Furthermore, they lacked the means to efficiently aggregate information from multiple databases and effectively generate responses. Improving the user experience required recognizing individual user emotions and adjusting the presentation and content of search results accordingly. Additionally, search results often included irrelevant data, increasing the time and effort users had to access useful information.
[1546] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[1547] In this invention, the server includes means for receiving a request entered by the user into a search box, means for analyzing the input text using a natural language processing engine, means for identifying emotions from the input text using an emotion engine, means for sending the generated search query to multiple databases, means for aggregating the search results obtained from each database, means including a generative AI that generates the aggregated search results as a natural language response, means for adjusting the method of presenting the search results based on the emotion recognition result, and means for sending the generated response to the user's terminal. This makes it possible to present individual search results according to the user's emotions, enabling efficient and personalized information provision. Furthermore, by filtering out noise data and extracting important information, it becomes possible for users to quickly and reliably access the information they are looking for.
[1548] A "user" is a person who uses a system to enter a search request and receive the results.
[1549] A "search box" is an interface for users to enter search requests.
[1550] A "server" is a computer system that manages and executes the process from receiving search requests to generating search result responses.
[1551] A "natural language processing engine" is a software component that analyzes input text and extracts meaning and important information.
[1552] An "emotion engine" is a software component that analyzes and identifies emotions from user input text.
[1553] A "search query" is a series of instructions generated to retrieve information from a database.
[1554] A "database" is a system that systematically stores and manages information and provides data in response to queries.
[1555] "Aggregation" is the process of integrating information obtained from multiple databases to construct results that meet a specific purpose.
[1556] "Generative AI" refers to artificial intelligence that generates natural language responses based on aggregated search results.
[1557] "Noise data" refers to unnecessary data or misinformation included in search results.
[1558] "Extracting important information" is the process of selecting information from search results that is useful and important to the user.
[1559] "Method of presenting search results" refers to the format and method used to display search results to the user.
[1560] A "natural language response" is a text-based response generated in a format that is easy for humans to understand.
[1561] A "device" is a device that a user uses to enter a search request and receive search results.
[1562] This invention relates to a search system for efficiently and personally processing user search requests. The system includes the following main components:
[1563] 1. Entering and receiving search requests
[1564] The user enters a search request into the search box on their device. An example of this input is, "Tell me the price and features of the new product." The device receives this input and sends it to the server.
[1565] 2. Sentiment analysis
[1566] The server uses an emotion engine to identify emotions from the input text. This emotion engine has the ability to identify emotion categories such as "joy," "anger," "sadness," and "surprise." For example, if the user inputs "Tell me the price and features of the new product," the emotion engine will identify the positive emotion of "interest."
[1567] 3. Natural Language Processing
[1568] The server uses a natural language processing engine to analyze the input text. The natural language processing engine includes functions such as tokenization, which divides the text into words and phrases; part-of-speech tagging, which identifies and tags the part of speech of words; and naming entity recognition (NER), which identifies proper nouns and important information. For example, keywords such as "new product," "price," and "features" may be extracted.
[1569] 4. Generating search queries
[1570] The server generates queries for database searches based on the extracted keywords. The query generation engine performs this process and constructs appropriate search queries. For example, a search query containing "price of new product X" and "features of new product X" is generated.
[1571] 5. Querying the database
[1572] The server sends the generated queries to multiple databases, including product information databases and pricing databases, and the search requests are sent to each database in the appropriate format.
[1573] 6. Retrieving and aggregating search results
[1574] The database retrieves information in response to a query and returns the results to the server. The server aggregates these search results and performs the following processing.
[1575] Filtering noisy data: Removes unnecessary data.
[1576] Duplicate data removal: Consolidate or delete data with identical content.
[1577] Extracting important information: Extract only the information that is useful to the user.
[1578] 7. Response generation
[1579] The server uses generative AI to generate natural language responses based on aggregated information. The generative AI adjusts the content and presentation of the response based on the emotion recognition results. For example, a response such as, "The price of the new product X is Y yen, and its features are Z. We think this product will suit your interests," might be generated.
[1580] 8. Sending and displaying responses
[1581] The server sends the generated response to the user's terminal. The terminal displays this response, allowing the user to verify the result.
[1582] Example of a prompt
[1583] Prompt example:
[1584] A user entered "Tell me the price and features of the new product" into the portal. The server performed sentiment recognition and identified "interest." Based on the information retrieved from the search database, generate a response in natural language. The response should be in a format that will capture the user's interest.
[1585] This prompt is used as input to a generative AI model, which then generates an appropriate response based on the relevant information. This allows the search system to provide more personalized search results that are more sensitive to the user's emotions.
[1586] The flow of the specific processing in Example 2 will be explained using Figure 13.
[1587] Step 1:
[1588] Entering and submitting a search request
[1589] The user enters a search request into the device's search bar and presses the send button. An example of this input is "Tell me the price and features of the new product." The device sends this request to the server. The input data is the text entered by the user, and the output data is the search request sent to the server.
[1590] Step 2:
[1591] emotion recognition
[1592] The server passes the received search request to the sentiment engine. The sentiment engine analyzes the emotions in the text entered by the user. For example, emotions such as "interest" may be identified. The input data is the user's search request, and the output data is the identified emotion information. Specifically, the sentiment engine executes an algorithm to identify emotion categories such as "joy," "anger," "sadness," and "surprise."
[1593] Step 3:
[1594] Natural Language Processing
[1595] The server passes the search request to a natural language processing engine for analysis. The natural language processing engine tokenizes the text, tags parts of speech, and performs naming entity recognition (NER). The input data is the user's search request, and the output data is the analyzed tokens, tags, and entity information. Specific operations include extracting keywords such as "new product," "price," and "features."
[1596] Step 4:
[1597] Generating search queries
[1598] The server generates a database search query based on the analyzed keywords. The query generation engine uses an internal algorithm to construct an appropriate search query. The input data is the analyzed keyword information, and the output data is the generated search query. Specifically, a query is generated that includes "the price of new product X" and "the features of new product X".
[1599] Step 5:
[1600] Database query
[1601] The server sends the generated search query to multiple databases. These databases include product information and pricing databases. A search request is made to each database in the appropriate format. The input data is the generated search query, and the output data is the search results from the databases. This process involves accessing the databases via an internal API.
[1602] Step 6:
[1603] Retrieving and aggregating search results
[1604] The database performs a search based on the search query received from the server and retrieves the corresponding data. Each database returns its search results to the server, which then aggregates them. The input data consists of search results from multiple databases, and the output data is the aggregated search results. Specific operations include filtering out noisy data, removing duplicate data, and extracting important information.
[1605] Step 7:
[1606] Natural Language Response Generation
[1607] The server uses generative AI to generate natural language responses based on aggregated search results. The generative AI adjusts the content and presentation of the response based on sentiment recognition results. The input data consists of aggregated search results and sentiment information, while the output data is the generated natural language response. Specifically, it generates responses in the format of, "The new product X is priced at Y yen and has features Z. We believe this product will be of interest to you."
[1608] Step 8:
[1609] Sending and displaying responses
[1610] The server sends the generated natural language response to the user's device. The device displays the received response to the user. The input data is the generated natural language response, and the output data is the response displayed to the user. Specifically, the server sends the response data via the API, and the device displays that data on its screen.
[1611] (Application Example 2)
[1612] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[1613] Traditional search systems can efficiently provide information in response to user requests, but they lack the ability to generate personalized responses based on user emotions. As a result, the user experience is not improved, and efficient information retrieval is difficult. Furthermore, the quality and display of search results are uniform, which presents a challenge in providing optimal information tailored to the user's emotions and situation.
[1614] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.
[1615] In this invention, the server includes means for receiving a request entered by the user into a search box, means for analyzing the entered text using a natural language processing engine, means for sending the generated search query to multiple databases, means for aggregating the search results obtained from each database, means including a generative AI that generates the aggregated search results as a natural language response, means including an emotion engine that recognizes emotions from the user's input text and adjusts the presentation method, and means for sending and displaying the generated response on the user's terminal. This makes it possible to provide search results optimized based on the user's emotions.
[1616] "User" refers to an individual or group that uses the system.
[1617] A "search box" refers to an input field where a user enters a search request.
[1618] A "natural language processing engine" refers to a software module that analyzes text entered by a user and understands its meaning and structure.
[1619] "Methods of analysis" refers to the process of tokenizing the text entered by the user and performing part-of-speech tagging and naming entity recognition.
[1620] A "search query" refers to a statement of inquiry generated based on a user's request, used to retrieve information from a database.
[1621] A "database" refers to a collection of structured information used to respond to search queries.
[1622] "Methods of aggregation" refers to the process of combining search results obtained from multiple databases into a single one.
[1623] "Generative AI" refers to artificial intelligence that generates responses in natural language format based on aggregated search results.
[1624] An "emotion engine" refers to a software module that has the function of analyzing and recognizing emotions from the user's input text.
[1625] "Adjusting the presentation method" refers to changing the display format and content of search results based on user sentiment.
[1626] "Means for sending a response to the user's terminal" refers to the communication means and software used to send and display the generated natural language response to the user's terminal.
[1627] This invention is a search system that provides efficient and personalized information in response to user search requests. This system receives requests entered by the user into a search box, analyzes those requests, and generates appropriate search results.
[1628] The server first receives a request entered by the user in the search box. Once the request is received, it uses a natural language processing engine to parse the text. The parsing includes tokenization, part-of-speech tagging, and naming entity recognition. This identifies important keywords and phrases.
[1629] Next, the server sends the generated search query to multiple databases. Each database returns relevant search results based on the received query. The server aggregates the results from the multiple databases, filters out noisy data, removes duplicate data, and extracts important information.
[1630] Based on aggregated search results, a generative AI generates responses in natural language. This process incorporates an emotion engine to recognize emotions from the user's input text. For example, if the user indicates emotions such as "interest" or "concern," the AI adjusts the response accordingly, providing personalized and effective information.
[1631] The generated response is sent to the user's device and provided in a displayable format. This response is optimized according to the user's emotions to improve the user experience.
[1632] As a concrete example of this system, let's consider the case where a user types "Recommend a new smartphone" into the search bar of their smartphone. Upon receiving this search request, the emotion engine identifies a positive emotion, "interest." The natural language processing engine analyzes the text and generates keywords such as "new smartphone" and "recommendation." The generated search query is then sent to multiple databases, and relevant information is aggregated. The generative AI generates a response, for example, "The new smartphone X costs Y yen and has Z features. We think this smartphone will match your interests," and sends it to the user's device.
[1633] Here are some examples of specific prompt messages:
[1634] User types "Recommend a new smartphone": Emotion is "Interested," search keywords are "new smartphone" and "recommendation." What response is generated?
[1635] In this way, by recognizing user emotions and providing information accordingly, it is possible to improve the user experience and achieve efficient information retrieval.
[1636] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[1637] Step 1:
[1638] The user enters a request into the search box.
[1639] The user enters "Tell me your recommendations for a new smartphone" into the search bar. The input text is sent to the server. The input data is "Tell me your recommendations for a new smartphone," and this text is parsed in the next processing step.
[1640] Step 2:
[1641] The server uses an emotion engine to analyze the sentiment of the input text.
[1642] The server receives the input text and uses its emotion engine to identify the "interest" (positive emotion). The input data is the text "Tell me your recommendations for a new smartphone" from Step 1, and the output is the emotion "interest".
[1643] Step 3:
[1644] The server uses a natural language processing engine to analyze the text and extract keywords.
[1645] The server uses a natural language processing engine to extract the keywords "new smartphone" and "recommendation". The input data is the text from Step 1, "Tell me your recommendations for a new smartphone," and the output is a list of keywords, "new smartphone" and "recommendation."
[1646] Step 4:
[1647] The server generates search queries based on the keywords that have been generated.
[1648] The server generates a search query for the database based on the keywords. The input data is the keywords "new smartphone" and "recommended" from step 3, and the output is the database search query "SELECT FROM products WHERE category='smartphone' AND feature='recommended'".
[1649] Step 5:
[1650] The server sends the generated search query to multiple databases.
[1651] The server sends the search query to multiple databases and retrieves relevant information. The input data is the search query "SELECT FROM products WHERE category='smartphone' AND feature='recommended'" from step 4, and the output is a list of search results retrieved from the databases.
[1652] Step 6:
[1653] The server aggregates search results obtained from multiple databases.
[1654] The server consolidates the retrieved search results, filters out noisy data, removes duplicate data, and extracts important information. The input data is the list of search results obtained in step 5, and the output is the aggregated search results.
[1655] Step 7:
[1656] The server uses generative AI to aggregate search results and generate natural language responses.
[1657] The server generates a natural language response based on the aggregated search results. During this process, it adjusts the presentation of the response based on the emotion identified by the emotion engine, namely "interest." The input data is the aggregated search results from step 6, and the output is the generated natural language response: "The new smartphone X costs Y yen and has Z features. We believe this smartphone will match your interests."
[1658] Step 8:
[1659] The server sends the generated response to the user's terminal.
[1660] The server sends the generated natural language response to the user's terminal for display. The input data is the generated natural language response from step 7, and the output is the response displayed on the user's terminal.
[1661] 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 controlled object 443 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.
[1662] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1663] 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 this disclosure is not limited thereto, and the specific processing may also be performed by the robot 414.
[1664] Furthermore, the emotion identification model 59, acting 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 a specific mapping, which is an emotion map (see Figure 9). Similarly, the emotion identification model 59 may also determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.
[1665] Figure 9 shows an emotion map 400 in which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. The closer to the center of the concentric circles, the more primitive the emotions are located. Further out of the concentric circles, emotions representing states and actions arising from mental states are located. Emotion is a concept that includes feelings and mental states. On the left side of the concentric circles, emotions that are generally generated from reactions occurring in the brain are located. On the right side of the concentric circles, emotions that are generally induced by situational judgment are located. Above and below the concentric circles, emotions that are generally generated from reactions occurring in the brain and induced by situational judgment are located. In addition, the emotion of "pleasure" is located on the upper side of the concentric circles, and the emotion of "displeasure" is located on the lower side. Thus, in the emotion map 400, multiple emotions are mapped based on the structure in which emotions arise, and emotions that are likely to occur simultaneously are mapped close together.
[1666] These emotions are distributed at the 3 o'clock position on the Emotion Map 400, and usually fluctuate between feelings of security and anxiety. In the right half of the Emotion Map 400, situational awareness takes precedence over internal feelings, resulting in a calm impression.
[1667] The inside of the Emotion Map 400 represents inner thoughts, while the outside represents actions. Therefore, the further you go from the outside of the Emotion Map 400, the more visible (expressed in actions) your emotions become.
[1668] Here, human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, it results in discomfort, and when they approach the ideal, it results in pleasure. Similarly, in robots, cars, motorcycles, etc., emotions can be created based on various balances, such as posture and battery level. When these balances deviate from the ideal, it results in discomfort, and when they approach the ideal, it results in pleasure. The emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on a system for analyzing brain physiological signals of speech emotion recognition and emotion, Tokushima University, doctoral dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map contains emotions belonging to a region called "response," where sensation is dominant. The right half of the emotion map contains emotions belonging to a region called "situation," where situational awareness is dominant.
[1669] The emotion map defines two emotions that promote learning. One is the emotion around the middle of the negative "repentance" and "reflection" on the situation side. In other words, it is 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 the emotion around the positive "desire" on the reaction side. In other words, it is when the robot has positive feelings such as "I want more" or "I want to know more."
[1670] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values representing each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple training data sets, which are combinations of user input and emotion values representing each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions located close together have similar values, as shown in the emotion map 900 in Figure 10. Figure 10 shows an example where multiple emotions such as "reassured," "calm," and "confident" have similar emotion values.
[1671] The above description primarily focuses on the functions of the data processing device 12 in relation to this disclosure. However, the system related to this disclosure is not necessarily implemented on a server. The system related to this disclosure may be implemented as a general information processing system. This disclosure may be implemented, for example, as a software program that runs on a personal computer or as an application that runs on a smartphone. The method related to this disclosure may be provided to users in SaaS (Software as a Service) format.
[1672] In the above embodiment, an example was given in which a specific process is performed by a single computer 22. However, the technology of this disclosure is not limited thereto, and a distributed processing of the specific process may be performed by multiple computers, including computer 22. For example, a data generation model 58 may be provided in an external device of the data processing device 12, and the external device may generate data according to the input data.
[1673] In the above embodiment, an example was given in which the specific processing program 56 is stored in the storage 32, but the technology of this disclosure is not limited thereto. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-temporary storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-temporary storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes specific processing according to the specific processing program 56.
[1674] 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.
[1675] Furthermore, it is not necessary to store the entirety 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 the entirety of the specific processing program 56 in the storage 32; it is acceptable to store only a portion of the specific processing program 56.
[1676] The following types of processors can be used as hardware resources to perform specific processing. Examples of processors include a CPU, a general-purpose processor that functions as a hardware resource to perform specific processing by executing software, i.e., a program. Other examples of processors include dedicated electrical circuits, such as FPGAs (Field-Programmable Gate Arrays), PLDs (Programmable Logic Devices), or ASICs (Application Specific Integrated Circuits), which have circuit configurations specifically designed to perform specific processing. All of these processors have built-in or connected memory, and all of them perform specific processing by using memory.
[1677] The hardware resource that performs a specific process may consist of one of these various processors, or it may consist of 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). Alternatively, the hardware resource that performs a specific process may consist of a single processor.
[1678] Examples of configurations using a single processor include, firstly, a configuration in which one or more CPUs and software are combined to form a single processor, and this processor functions as a hardware resource that performs a specific process. Secondly, there is a configuration using a processor that realizes the functions of the entire system, including multiple hardware resources that perform a specific process, on a single IC chip, as exemplified by SoCs (System-on-a-chip). In this way, a specific process is realized using one or more of the above types of processors as hardware resources.
[1679] Furthermore, the hardware structure of these various processors can more specifically utilize electrical circuits that combine circuit elements such as semiconductor devices. Also, the specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps can be deleted, new steps added, or the processing order rearranged, as long as it does not deviate from the main purpose.
[1680] The descriptions and illustrations presented above are detailed explanations of the technical aspects of this disclosure and are merely examples of the technical aspects. For example, the above descriptions of the structure, function, operation, and effect are examples of the structure, function, operation, and effect of the technical aspects of this disclosure. Therefore, it goes without saying that you may delete unnecessary parts, add new elements, or replace elements in the descriptions and illustrations presented above, as long as you do not deviate from the essence of the technical aspects of this disclosure. Furthermore, in order to avoid confusion and facilitate understanding of the technical aspects of this disclosure, explanations of common technical knowledge and the like that do not require special explanation to enable the implementation of the technical aspects of this disclosure have been omitted from the descriptions and illustrations presented above.
[1681] All documents, patent applications, and technical standards described herein are incorporated by reference to the same extent as if each individual document, patent application, and technical standard were specifically and individually noted to be incorporated by reference.
[1682] The following is further disclosed regarding the embodiments described above.
[1683] (Claim 1)
[1684] A means of receiving requests entered by the user in the search box,
[1685] A means for analyzing input text using a natural language processing engine,
[1686] A means of sending the generated search query to multiple databases,
[1687] A means of aggregating search results obtained from each database,
[1688] A means including a generative AI that generates aggregated search results as a natural language response,
[1689] A means of sending the generated response to the user's terminal and
[1690] A system that includes this.
[1691] (Claim 2)
[1692] The system according to claim 1, characterized in that the natural language processing engine has functions for tokenization, part-of-speech tagging, and naming entity recognition.
[1693] (Claim 3)
[1694] The system according to claim 1, characterized in that the generative AI has functions for filtering noisy data, extracting and summarizing important information, and generating structured responses.
[1695] "Example 1"
[1696] (Claim 1)
[1697] A means of receiving requests entered by the user in the search box,
[1698] A means for analyzing input text using a natural language processing engine,
[1699] A means of sending the generated search query to multiple databases,
[1700] A means of aggregating search results obtained from each database,
[1701] Means for removing duplicate data, filtering noisy data, and extracting and summarizing important information,
[1702] A means including a generative AI that generates aggregated search results as a natural language response,
[1703] A means of sending the generated response to the user's terminal and
[1704] A system that includes this.
[1705] (Claim 2)
[1706] The system according to claim 1, characterized in that the natural language processing engine has functions for tokenization, part-of-speech tagging, and naming entity recognition.
[1707] (Claim 3)
[1708] The system according to claim 1, characterized in that the generative AI has functions for filtering noisy data, extracting and summarizing important information, and generating structured responses.
[1709] "Application Example 1"
[1710] (Claim 1)
[1711] A means by which the user can receive requests through a search bar or voice input method,
[1712] A means for analyzing input text using a natural language processing engine,
[1713] A means of sending the generated search query to multiple databases,
[1714] A means of aggregating search results obtained from each database,
[1715] A means including a generative AI that generates aggregated search results as a natural language response,
[1716] Means for transmitting the generated response to the user's terminal or display device,
[1717] Means including a voice recognition function,
[1718] A means of using a display device as a user interface,
[1719] A system that includes this.
[1720] (Claim 2)
[1721] The system according to claim 1, characterized in that the natural language processing engine has functions for tokenization, part-of-speech tagging, and naming entity recognition.
[1722] (Claim 3)
[1723] The system according to claim 1, characterized in that the generative AI has functions for filtering noisy data, extracting and summarizing important information, and generating structured responses.
[1724] "Example 2 of combining an emotion engine"
[1725] (Claim 1)
[1726] A means of receiving requests entered by the user in the search box,
[1727] A means for analyzing input text using a natural language processing engine,
[1728] A means of identifying emotions from input text using an emotion engine,
[1729] A means of sending the generated search query to multiple databases,
[1730] A means of aggregating search results obtained from each database,
[1731] A means including a generative AI that generates aggregated search results as a natural language response,
[1732] A means for adjusting the method of presenting search results based on emotion recognition results,
[1733] A means of sending the generated response to the user's terminal and
[1734] A system that includes this.
[1735] (Claim 2)
[1736] The system according to claim 1, characterized in that the natural language processing engine has the functions of tokenization, part-of-speech tagging, and naming entity recognition, and the emotion engine has the function of identifying emotion categories such as "joy," "anger," "sadness," and "surprise."
[1737] (Claim 3)
[1738] The system according to claim 1, characterized in that the generative AI has functions for filtering noise data, extracting and summarizing important information, and generating structured responses, and has a function for adjusting the content and presentation method of the response based on the emotion recognition result.
[1739] "Application example 2 when combining with an emotional engine"
[1740] (Claim 1)
[1741] A means of receiving requests entered by the user in the search box,
[1742] A means for analyzing input text using a natural language processing engine,
[1743] A means of sending the generated search query to multiple databases,
[1744] A means of aggregating search results obtained from each database,
[1745] A means including a generative AI that generates aggregated search results as a natural language response,
[1746] A means including an emotion engine that recognizes emotions from user input text and adjusts the presentation method,
[1747] A means of sending the generated response to the user's terminal and displaying it.
[1748] A system that includes this.
[1749] (Claim 2)
[1750] The system according to claim 1, characterized in that the natural language processing engine has functions for tokenization, part-of-speech tagging, and naming entity recognition.
[1751] (Claim 3)
[1752] The system according to claim 1, characterized in that the generative AI has functions for filtering noisy data, extracting and summarizing important information, and generating structured responses, and adjusts the response based on the user's emotions. [Explanation of symbols]
[1753] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Devices 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robots< / url:> < / url:> < / url:> < / url:>
Claims
1. A means of receiving requests entered by the user in the search box, A means for analyzing input text using a natural language processing engine, A means of sending the generated search query to multiple databases, A means of aggregating search results obtained from each database, A means including a generative AI that generates aggregated search results as a natural language response, A means of sending the generated response to the user's terminal and A system that includes this.
2. The system according to claim 1, characterized in that the natural language processing engine has functions for tokenization, part-of-speech tagging, and naming entity recognition.
3. The system according to claim 1, characterized in that the generative AI has functions for filtering noisy data, extracting and summarizing important information, and generating structured responses.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A