System

The system addresses the inefficiencies of conventional communication apps by real-time keyword extraction and information retrieval, allowing users to access relevant information without interrupting their conversations, enhancing user experience and efficiency.

JP2026017287APending Publication Date: 2026-02-04SOFTBANK GROUP CORP
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024118069
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-07-23
Publication Date
2026-02-04

AI Technical Summary

Technical Problem

Conventional communication applications require users to interrupt conversations to access information, struggle with understanding context and intent, and are inefficient in providing relevant information.

Method used

A system that analyzes conversation data in real-time using natural language processing to extract keywords, retrieves related information from external services, and displays it seamlessly within the communication application.

Benefits of technology

Enables users to obtain necessary information quickly and efficiently without disrupting the conversation flow, improving user experience and communication efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026017287000001_ABST
    Figure 2026017287000001_ABST
Patent Text Reader

Abstract

A system is provided.SOLUTION: A system comprising: means for receiving text data; means for extracting a keyword from the received text data; means for acquiring related information from an external information service based on the extracted keyword; and means for displaying the acquired related information.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The technology of the present disclosure relates to a system. [Background technology]

[0002] Patent document 1 discloses a persona chatbot control method performed by at least one processor, the method including the steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to a description of the chatbot character, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Japanese Patent Publication No. 2022-180282 Summary of the Invention [Problem to be solved by the invention]

[0004] In modern communication applications, when users want to look up information, they have to interrupt the conversation and access an external information service. This process can degrade the user experience and disrupt the flow of the conversation. It can also prevent users from obtaining the information they need accurately and in a timely manner. Furthermore, conventional search methods often struggle to understand context and intent, and it often takes a long time to find the right information. [Means for solving the problem]

[0005] This invention analyzes conversation data within a communication application in real time and extracts keywords according to the context using natural language processing technology. It also provides a system that obtains related information from external information services based on the extracted keywords and displays that information on the user's conversation screen. This allows users to obtain the necessary information in a timely manner without interrupting the conversation, improving the user experience. Furthermore, the ability to quickly obtain appropriate information also improves conversation efficiency.

[0006] "Text data" refers to textual information exchanged by users within a communication application.

[0007] A "communications application" is software or a platform that allows users to send and receive messages.

[0008] "Keywords" are important words or phrases extracted from text data.

[0009] "Natural language processing technology" is a set of technologies that enable computers to analyze and understand human language.

[0010] "External information services" are online services that provide information, such as search engines and databases.

[0011] "Related information" refers to information related to the extracted keywords and useful to the user.

[0012] "Means for displaying" refers to a method for visually presenting the acquired related information in a form that can be confirmed by the user. [Brief explanation of the drawings]

[0013] [Figure 1] 1 is a conceptual diagram showing an example of the configuration of a data processing system according to a first embodiment. [Figure 2] 1 is a conceptual diagram showing an example of main functions of a data processing device and a smart device according to a first embodiment. [Figure 3] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a second embodiment. [Figure 4] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and smart glasses according to a second embodiment. [Figure 5] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a third embodiment. [Figure 6] FIG. 11 is a conceptual diagram showing an example of main functions of a data processing device and a headset-type terminal according to a third embodiment. [Figure 7] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a fourth embodiment. [Figure 8] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and a robot according to a fourth embodiment. [Figure 9] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 10] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 11] FIG. 3 is a sequence diagram showing a processing flow of the data processing system according to the first embodiment. [Figure 12] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 1. [Figure 13] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system according to the second embodiment when an emotion engine is combined. [Figure 14] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 2 when an emotion engine is combined. DETAILED DESCRIPTION OF THE INVENTION

[0014] An example of an embodiment of a system according to the technology of the present disclosure will be described below with reference to the accompanying drawings.

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

[0016] In the following embodiments, a coded processor (hereinafter simply referred to as a "processor") may be a single arithmetic device or a combination of multiple arithmetic devices. Furthermore, a processor may be a single type of arithmetic device or a combination of multiple types of arithmetic devices. Examples of arithmetic devices include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), and an APU (Accelerated Processing Unit).

[0017] In the following embodiments, a coded RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a working memory by a processor.

[0018] In the following embodiments, the coded storage is one or more non-volatile storage devices that store various programs, various parameters, etc. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), and magnetic tapes.

[0019] In the following embodiments, a communication I / F (Interface) with a symbol is an interface including a communication processor, an antenna, etc. The communication I / F controls communication between multiple computers. Examples of communication standards applied to the communication I / F include wireless communication standards including 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), Bluetooth (registered trademark), etc.

[0020] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." In other words, "A and / or B" means that it may be only A, only B, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" is also applied when three or more things are expressed connected by "and / or."

[0021] [First embodiment]

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

[0023] 1, a data processing system 10 includes a data processing device 12 and a smart device 14. An example of the data processing device 12 is a server.

[0024] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).

[0025] The smart device 14 includes a computer 36, a reception device 38, an output device 40, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The reception device 38, the output device 40, and the camera 42 are also connected to the bus 52.

[0026] The reception device 38 includes a touch panel 38A, a microphone 38B, and the like, and receives user input. The touch panel 38A detects contact with an indicator (for example, a pen or a finger) to receive user input by the touch of the indicator. The microphone 38B detects the user's voice to receive user input by voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the data indicating the user input.

[0027] The output device 40 includes a display 40A and a speaker 40B, and presents data to the user 20 by outputting the data in a form of expression that the user 20 can perceive (for example, audio and / or text). The display 40A displays visible information such as text and images in accordance with instructions from the processor 46. The speaker 40B outputs audio in accordance with instructions from the processor 46. The camera 42 is a compact digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.

[0028] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54.

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

[0030] 2, in the data processing device 12, a specific process is performed by the processor 28. A specific processing program 56 is stored in the storage 32. The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific process is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.

[0031] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.

[0032] In the smart device 14, the processor 46 performs the reception output process. The storage 50 stores a reception output program 60. The reception output program 60 is used in conjunction with the specific processing program 56 by the data processing system 10. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.

[0033] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."

[0034] The present invention provides a system that allows users to obtain related information while continuing a conversation within a communication application. This system has the functions of receiving text data, extracting keywords, obtaining related information from external information services, and displaying that information. Specific embodiments of this system are described below.

[0035] Program Overview

[0036] This system includes a communication application terminal and a server that performs analysis, keyword extraction, and data linkage with external information services. It analyzes text data entered by users in the communication application in real time and provides the necessary information.

[0037] Program processing

[0038] 1. Device: A user types and sends a message in a communication application (e.g., a messaging app). This message is recorded as text data on the device.

[0039] 2. Terminal: Sends the received text data to the server, where it is analyzed.

[0040] 3. Server: The server analyzes the received text data and extracts keywords based on the context. Natural language processing techniques are used to extract keywords. For example, if a user sends a message saying, "Where's a good place for dinner tonight?", "dinner" and "place" are extracted as keywords.

[0041] 4. Server: Using the extracted keywords, queries are sent to external information services (e.g., search engines or databases) to retrieve relevant information, such as a list of nearby restaurants or rankings of recommended places.

[0042] 5. Terminal: Receives the retrieved relevant information and displays it on the screen of the user's communication application, allowing the user to view relevant information in real time without interrupting the flow of conversation.

[0043] Specific use cases

[0044] Scene 1: Finding a place for dinner

[0045] User: Sends a message in a communications application saying, "Where do you think we should have dinner tonight?"

[0046] Terminal: Sends a message to the server.

[0047] Server: Analyzes the message and extracts the keywords "dinner" and "location."

[0048] Server: Sends a query to an external information service using the extracted keywords to obtain information on "nearby restaurants."

[0049] Device: Information such as "Here are some recommended restaurants nearby" will be displayed on the communication application screen.

[0050] Scene 2: Set a time to meet

[0051] User: Sends a message via a communication application saying, "Shall we meet in Shinjuku at 7pm?"

[0052] Terminal: Sends a message to the server.

[0053] Server: Analyze the message and extract the keywords "7pm" and "Shinjuku."

[0054] Server: Sends a query to an external information service using the extracted keywords to obtain information on "the weather in Shinjuku at 7 p.m." and "the best means of transportation to Shinjuku."

[0055] Terminal: Information such as "Here's the weather in Shinjuku at 7 p.m." and "Here's the best way to get to Shinjuku" is displayed on the communication application screen.

[0056] In this way, the system of the present invention allows users to quickly obtain relevant information without interrupting the conversation, enabling efficient and smooth communication.

[0057] The processing flow will be explained below.

[0058] Step 1:

[0059] User: Type and send a message within a communication application, for example, "Where's a good place for dinner tonight?"

[0060] Step 2:

[0061] Terminal: Recognizes the sent message as text data and prepares it for transmission to the server, converting it into the appropriate format and encrypting it.

[0062] Step 3:

[0063] Terminal: Sends text data to the server using HTTP requests or web sockets, and the data is sent to the server in real time.

[0064] Step 4:

[0065] Server: Passes the received text data to a module for analysis, where data cleansing and format conversion are performed.

[0066] Step 5:

[0067] Server: Uses natural language processing (NLP) technology to extract contextual keywords from text data. For example, in the previous example, "dinner" and "location" are extracted.

[0068] Step 6:

[0069] Server: Generates a query to an external information service based on the extracted keywords. This query is formatted as an API call.

[0070] Step 7:

[0071] Server: Sends a query to the API of an external information service to retrieve relevant information. For example, sending a query like "recommended places for dinner" to a search engine.

[0072] Step 8:

[0073] Server: Receives the relevant information and formats it for delivery to the user. Formats such as JSON or XML are common here.

[0074] Step 9:

[0075] Server: Formats and sends relevant information back to the device. This communication is also encrypted and secure.

[0076] Step 10:

[0077] Terminal: Analyzes the relevant information received from the server and prepares it for display on the user's communication application screen, including formatting and layout settings for the information.

[0078] Step 11:

[0079] On-device: The acquired relevant information is seamlessly integrated into the chat screen of a communication application, allowing users to view the information without interrupting the conversation.

[0080] Step 12:

[0081] User: Decides on the next action based on the relevant information presented, for example, replying "Let's try this restaurant" to keep the conversation moving.

[0082] Example 1

[0083] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."

[0084] Users of communication applications have a need to obtain necessary information without interrupting the conversation. Conventional systems require users to perform individual searches, making it difficult to obtain information efficiently. The present invention aims to solve this problem by providing a system that allows users to obtain relevant information in real time without interrupting the flow of conversation.

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

[0086] In this invention, the server includes means for receiving text data, means for analyzing the received text data and extracting keywords based on the context, and means for sending a query to an external information service based on the extracted keywords to obtain related information, thereby enabling a user to quickly and efficiently obtain related information in real time without interrupting the flow of conversation.

[0087] "Text data" refers to information in the form of a document sent by a user through a communication application.

[0088] "Analysis" refers to understanding the content of received text data and processing it to extract specific information.

[0089] "Keywords" refer to important words and phrases extracted from the analyzed text data.

[0090] "External information services" refer to services for obtaining information from outside sources, such as search engines and databases on the Internet.

[0091] A "query" refers to a command sent to an external information service for searching or retrieving information.

[0092] "Related information" refers to information obtained from an external information service based on the extracted keywords.

[0093] "Display" refers to visually presenting the retrieved relevant information to the user.

[0094] "Communications Application" refers to software that allows users to send and receive text messages.

[0095] "Generative AI models" refer to advanced machine learning algorithms used for natural language processing.

[0096] "Server" refers to a computer system for analyzing text data and linking with external information services.

[0097] "Terminal" refers to a device used by a user to access a communication application.

[0098] The present invention provides a system that allows users to obtain related information while continuing a conversation within a communication application. The system has the functions of receiving text data, extracting keywords, obtaining related information from external information services, and displaying the information.

[0099] System Overview

[0100] This system includes a terminal that runs a communication application and a server that performs analysis, keyword extraction, and data linkage with external information services. It analyzes text data entered by users in the communication application in real time and provides the necessary information.

[0101] Hardware and software used

[0102] Device: A device used by a user, such as a smartphone, tablet, or computer, that runs a communication application (e.g., a messaging app).

[0103] Server: A remote server for analyzing text data, extracting keywords, and connecting with external information services. Generative AI models such as BERT and GPT-3 are implemented on the server.

[0104] Program processing

[0105] 1. Terminal: A user types and sends a message in a communication application. The message is recorded as text data on the terminal.

[0106] 2. Terminal: Sends the received text data to the server, where it is analyzed.

[0107] 3. Server: Analyzes the received text data and extracts contextual keywords using natural language processing techniques (e.g., generative AI models like BERT and GPT-3).

[0108] 4. Server: Using the extracted keywords, queries are sent to external information services (e.g., search engines or databases) to retrieve relevant information.

[0109] 5. Terminal: Receives the retrieved relevant information and displays it on the screen of the user's communication application.

[0110] Specific examples

[0111] Scene 1: Finding a place for dinner

[0112] User: Sends a message in a communications application saying, "Where do you think we should have dinner tonight?"

[0113] Terminal: Sends a message to the server.

[0114] Server: Analyzes the message and extracts the keywords "dinner" and "location."

[0115] Server: Sends a query to an external information service using the extracted keywords to obtain information on "nearby restaurants."

[0116] Device: Information such as "Here are some recommended restaurants nearby" will be displayed on the communication application screen.

[0117] Scene 2: Set a time to meet

[0118] User: Sends a message via a communication application saying, "Shall we meet in Shinjuku at 7pm?"

[0119] Terminal: Sends a message to the server.

[0120] Server: Analyze the message and extract the keywords "7pm" and "Shinjuku."

[0121] Server: Sends a query to an external information service using the extracted keywords to obtain information on "the weather in Shinjuku at 7 p.m." and "the best means of transportation to Shinjuku."

[0122] Terminal: Information such as "Here's the weather in Shinjuku at 7 p.m." and "Here's the best way to get to Shinjuku" is displayed on the communication application screen.

[0123] This invention allows users to quickly obtain related information without interrupting a conversation, enabling efficient and smooth communication.

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

[0125] Step 1:

[0126] Terminal: A user types and sends messages in a communication application.

[0127] Specific actions: The user types "Where should we go for dinner tonight?" into a device (such as a smartphone or computer) and clicks the send button.

[0128] Input: User-entered message text: "Where would you like to eat dinner tonight?"

[0129] Output: The terminal's message sending function is fired and the message is logged.

[0130] Step 2:

[0131] Terminal: Sends the received text data to the server.

[0132] Specific behavior: Text data is packaged in JSON format and sent as an HTTP request to the specified endpoint on the server.

[0133] Input: Recorded text data "Where would you like to have dinner tonight?"

[0134] Output: Text data is sent to the server (e.g., a request to a "POST / messages" endpoint).

[0135] Step 3:

[0136] Server: Analyzes the received text data and extracts context-based keywords.

[0137] What it does: Passes incoming text data to an analysis engine (e.g., BERT or GPT-3) to understand the context and identify important words and phrases.

[0138] Input: Text data received by the server: "Where would you like to have dinner tonight?"

[0139] Output: Keywords extracted as analysis results: "dinner" and "location"

[0140] Step 4:

[0141] Server: Using the extracted keywords, queries are sent to external information services to obtain related information.

[0142] Specific behavior: Generates and sends the appropriate query string to external information services (e.g., Google Search API or Yelp API).

[0143] Input: Extracted keywords "dinner" and "location"

[0144] Output: Related information returned from an external information service (e.g., a list of "nearby restaurants")

[0145] Step 5:

[0146] Server: Formats the relevant information obtained and sends it to the device.

[0147] Specific operation: Organize the received related information in JSON format and send it to the terminal as an HTTP response.

[0148] Input: Related information obtained from an external information service (list of "nearby restaurants")

[0149] Output: Formatted response data

[0150] Step 6:

[0151] Terminal: Receives the retrieved relevant information and displays it on the screen of the user's communication application.

[0152] Specific behavior: Analyzes the received response and displays it in the user interface of the communication application.

[0153] Input: Formatted response data sent by the server

[0154] Output: Relevant information displayed in a user interface (e.g., "Here are some recommended restaurants nearby")

[0155] The above steps make the entire system work, allowing users to quickly obtain relevant information without interrupting the conversation.

[0156] (Application example 1)

[0157] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."

[0158] In conventional communication applications, it was difficult for users to obtain related information and content in real time while continuing a conversation, and they had to interrupt the conversation to search for information. Such interruptions ruined the user experience and hindered smooth communication. Furthermore, searching for related information took time and effort, making it difficult for users to quickly access the information they needed.

[0159] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.

[0160] In this invention, the server includes means for receiving text data, means for extracting keywords from the received text data, means for acquiring related information from external information services and information distribution services based on the extracted keywords, and means for responding to user input in real time using a chat function integrated into the communication application. This allows users to quickly access necessary information and related content without interrupting their conversation, resulting in smooth and efficient communication.

[0161] "Text data" refers to textual information that a user inputs or transmits through a communication application.

[0162] "Keywords" are important words or phrases extracted from text data, and related information is searched for based on these.

[0163] "External information services" refer to systems or platforms that provide information outside of communication applications, such as search engines and various databases.

[0164] "Related information" refers to information obtained from an external information service based on the extracted keywords, and is related to the content of the user's conversation.

[0165] An "information distribution service" refers to a system or platform that provides content requested by users, such as a video streaming service or a news site.

[0166] "Communications Application" means application software that enables users to communicate with other users through messaging, voice, or video.

[0167] "Chat function" refers to a function that allows users to exchange messages in real time within a communication application.

[0168] "Natural language processing technology" refers to a set of techniques and methods used by computers to understand, generate, and respond to human language.

[0169] "Real-time" refers to responding immediately to information entered by the user and processing or responding without delay.

[0170] "User" means any person or entity that uses a communication application to communicate with other users.

[0171] This invention provides a system that allows users to obtain relevant information and content in real time through text data. In particular, it is characterized by the ability to respond immediately to user input using a chat function integrated into a communication application.

[0172] System configuration

[0173] The system consists of the following main components:

[0174] Terminal: A device that allows a user to operate a communication application, such as a smartphone, tablet, or PC.

[0175] Server: This is the central system that analyzes text data, extracts keywords, and obtains information from external information services.

[0176] External information and distribution services: External systems that the server queries to retrieve information. Examples include search engines, databases, video streaming services, and news sites.

[0177] Program Overview

[0178] 1. Terminal: Receives text data sent by the user via a communication application.

[0179] 2. Server: Analyzes the received text data and extracts contextual keywords using natural language processing techniques, such as generative AI models like Hugging Face's Transformers.

[0180] 3. Server: Based on the extracted keywords, queries are sent to external information services and information distribution services to obtain related information and content.

[0181] 4. Terminal: Displays the acquired information and content in real time on the screen of the user's communication application.

[0182] Specific use cases

[0183] Scenario 1: Finding a Python tutorial

[0184] If a user types "I want to watch a Python tutorial" into a communication application, the server extracts the keywords "Python" and "tutorial" and retrieves related videos and articles from external information services. The device displays the retrieved information on the communication application screen, allowing the user to check the information immediately.

[0185] (Example of a prompt)

[0186] I want to see a Python tutorial.

[0187] Server processing

[0188] The server analyzes the received text data and uses a generative AI model to extract important keywords. It then sends queries to external information services and distribution services based on the keywords to retrieve relevant information. The retrieved information is then sent in an optimal format to the user's device and displayed in the communication application. This process allows users to access the information they need without interrupting their conversation.

[0189] In this way, through the entire system process, users can quickly access the information and content they need while maintaining efficient and smooth communication. This embodiment eliminates the inconvenience of information search in conventional communication applications and greatly improves the user experience.

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

[0191] Step 1:

[0192] A user types and sends a message in a communication application. In this step, text data is generated about a topic that the user is interested in. For example, the user types "I want to see a Python tutorial." This input becomes the text data that is processed in the next step.

[0193] Step 2:

[0194] The terminal receives the text data entered by the user and sends the text data to the server. In this step, the terminal plays the role of transferring the text data to the server. The input is the text data entered by the user, and the output is the text data sent to the server.

[0195] Step 3:

[0196] The server analyzes the received text data and uses a generative AI model to extract contextual keywords. For example, Hugging Face's Transformers is used. Here, the received text data is given as input, and natural language processing techniques are used to extract keywords such as "Python" and "tutorial." The output is these keywords.

[0197] Step 4:

[0198] The server sends queries to external information services and information distribution services based on the extracted keywords to obtain related information and content. For example, it sends queries to search engines and video distribution services. In this step, the extracted keywords are used as input, and the related information and content obtained from the information services is the output.

[0199] Step 5:

[0200] The server then formats the acquired relevant information and content into the most appropriate format and sends it to the device. Here, APIs and other tools are used to properly format the information. The input is the information acquired from outside, and the output is the formatted information.

[0201] Step 6:

[0202] The terminal receives the information sent from the server and displays it in real time on the screen of the communication application. The user can directly check the retrieved information and content. In this step, the terminal receives the information and displays it within the application. The input is the information received from the server, and the output is the information displayed on the UI of the communication application.

[0203] Through this series of processes, users can quickly access the information they need without interrupting the conversation. As a specific example of a prompt sentence, if you input "I want to watch a Python tutorial," related videos and articles will be retrieved and displayed in real time.

[0204] Furthermore, an emotion engine that estimates the user's emotion may be combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion.

[0205] This invention is a system that analyzes user conversations in a communication application in real time and combines it with an emotion engine to provide relevant information based on the user's emotions. This system has the functions of receiving text data, extracting keywords, obtaining related information from external information services, and displaying that information. The emotion engine also recognizes the user's emotions and adjusts the related information provided based on those emotions.

[0206] Program processing

[0207] 1. Terminal: A user types and sends a message within a communication application, for example, "I'm tired from a busy day at work. Do you know anywhere good for dinner?"

[0208] 2. Terminal: The terminal recognizes the message as text data and prepares it for transmission to the server, where it is converted into the appropriate format and encrypted.

[0209] 3. Terminal: Sends text data to the server using HTTP requests or web sockets, and the data is sent to the server in real time.

[0210] 4. Server: The received text data is passed to the analysis module, where data cleansing and format conversion are performed.

[0211] 5. Server: Using natural language processing (NLP) technology, context-specific keywords are extracted from the text data. For example, keywords such as "dinner," "place," and "tired" are extracted.

[0212] 6. Server: Analyzes the user's emotions from text data using an emotion engine. For example, recognizes that the user is tired from the expression "tired."

[0213] 7. Server: Generates a query to an external information service based on the extracted keywords and the recognized sentiment. This query is formatted as an API call. For example, a query such as "recommended dinner places relaxing" is generated.

[0214] 8. Server: Sends a query to the API of an external information service to get relevant information. Sends the above query to a search engine to find a relaxing place for dinner.

[0215] 9. Server: Receives the relevant information and formats it for delivery to the user. The information is formatted in a format such as JSON or XML.

[0216] 10. Server: Formats and sends relevant information back to the device. This communication is also encrypted and secure.

[0217] 11. Terminal: Analyzes the relevant information received from the server and prepares it for display on the user's communication application screen, including formatting and layout of the information.

[0218] 12. Terminal: The retrieved relevant information is seamlessly integrated into the chat screen of a communication application, allowing users to view the information without interrupting the conversation.

[0219] Specific use cases

[0220] Scene 1: Sentiment analysis when searching for a dinner spot

[0221] User: Messages: "Where do you think we should go for dinner tonight? I'm really tired."

[0222] Terminal: Sends a message to the server.

[0223] Server: Analyzes the message and recognizes the keywords "dinner" and "location" as well as the emotion "tired."

[0224] Server: Obtain information on "nearby restaurants where you can relax" based on the extracted keywords and sentiment.

[0225] Device: "Here are some recommended restaurants where you can relax," the communication application screen displays.

[0226] Scene 2: Emotional analysis when planning a day off

[0227] User: Sends a message saying, "Anywhere fun to go this weekend?"

[0228] Terminal: Sends a message to the server.

[0229] Server: Analyzes the message and recognizes the keywords "weekend" and "fun place" as well as the emotion "looking forward to it."

[0230] Server: Obtain information on "fun weekend activities" based on the extracted keywords and sentiment.

[0231] Device: "Here are some recommended activities for the weekend" appears on the communications application screen.

[0232] In this way, by combining the emotion engine, the system of the present invention can provide appropriate information that matches the user's emotions, further improving the user experience.

[0233] The processing flow will be explained below.

[0234] Step 1:

[0235] User: Type and send a message within a communication application, for example, "I'm tired after a busy day at work. Do you know anywhere good for dinner?"

[0236] Step 2:

[0237] Terminal: Recognizes the sent message as text data and prepares it for transmission to the server, converting it into the appropriate format and encrypting it.

[0238] Step 3:

[0239] Terminal: Sends text data to the server using HTTP requests or web sockets, and the data is sent to the server in real time.

[0240] Step 4:

[0241] Server: Passes the received text data to the analysis module, where data cleansing and format conversion are performed.

[0242] Step 5:

[0243] Server: Using natural language processing (NLP) technology, it extracts context-specific keywords from the text data. For example, keywords such as "dinner," "place," and "tired" are extracted.

[0244] Step 6:

[0245] Server: Analyzes the user's emotions from text data using an emotion engine. For example, recognizes that the user is tired from the expression "tired."

[0246] Step 7:

[0247] Server: Generates a query to an external information service based on the extracted keywords and the recognized sentiment. This query is formatted as an API call. For example, a query such as "recommended dinner places relaxing" is generated.

[0248] Step 8:

[0249] Server: Sends a query to an external information service's API to retrieve relevant information. Sends the above query to a search engine to find a relaxing place for dinner.

[0250] Step 9:

[0251] Server: Receives the relevant information and formats it to be provided to the user. Here, the information is formatted into a format such as JSON or XML.

[0252] Step 10:

[0253] Server: Formats and sends relevant information back to the device. This communication is also encrypted and secure.

[0254] Step 11:

[0255] Terminal: Analyzes the relevant information received from the server and prepares it for display on the user's communication application screen, including formatting and layout settings for the information.

[0256] Step 12:

[0257] On-device: The acquired relevant information is seamlessly integrated into the chat screen of a communication application, allowing users to view the information without interrupting the conversation.

[0258] Step 13:

[0259] User: Decides on the next action based on the relevant information presented, for example, replying "Let's try this restaurant" to keep the conversation moving.

[0260] Example 2

[0261] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."

[0262] Conventional communication applications have limited means for providing relevant information based on the user's conversation content, making it difficult to provide information flexibly in response to the user's emotions. Furthermore, users cannot obtain appropriate information using vague expressions without entering specific keywords. This limits the user experience and hinders the improvement of user satisfaction.

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

[0264] In this invention, the server includes means for receiving text data, means for extracting keywords, means for analyzing the extracted emotions based on the keywords, and means for acquiring related information from an external information service based on the emotions and keywords. This makes it possible to provide related information according to the user's emotions. Furthermore, even if the user enters ambiguous expressions, appropriate information can be provided, which is expected to improve the user experience.

[0265] "Text data" refers to character string information sent by a user via a communication application.

[0266] "Keyword extraction" refers to the process of identifying and extracting important words and phrases from received text data.

[0267] "Sentiment analysis" refers to the process of identifying a user's emotional state from the words and context contained in text data.

[0268] "External information services" refers to external data providers that provide the necessary information through APIs or web services.

[0269] "Related information acquisition" refers to the process of acquiring information based on user input and emotions from external information services.

[0270] "Displaying information" refers to the process of presenting the relevant information obtained in a form that can be visually confirmed by the user.

[0271] This invention is a system that analyzes user conversations in a communication application in real time and combines it with an emotion engine to provide relevant information based on the user's emotions. This system has the functions of receiving text data, extracting keywords, obtaining related information from external information services, and displaying that information. The emotion engine also recognizes the user's emotions and adjusts the related information provided based on those emotions.

[0272] Hardware and software used

[0273] This system is implemented using the following hardware and software.

[0274] 1. Communication applications: Applications that run on smartphones or PCs and allow users to exchange messages with each other. For example, we will use a common messaging application.

[0275] 2. Server: Used to analyze the received text data, recognize emotions, and retrieve relevant information. For example, a cloud-based server (e.g., AWS, Azure) is used.

[0276] 3. Natural Language Processing Engine (NLP Engine): Used to extract keywords from text data. For example, Google NLP API is used.

[0277] 4. Emotion engine: Used to analyze user emotions from text data. For example, IBM Watson Emotional Analysis is used.

[0278] 5. APIs of external information services: Used to retrieve relevant information based on keywords and sentiment. For example, Google Places API is used.

[0279] 6. Communication protocol: HTTP requests and web sockets are used to communicate data between the terminal and the server, and between the server and external information services. HTTPS or WSS is used to encrypt the communication.

[0280] Specific examples

[0281] The device receives the user's message in the communication application and sends it to the server. The server analyzes the received message and extracts keywords using an NLP engine. It then analyzes the user's emotions using an emotion engine. Based on the extracted keywords and analyzed emotions, the server sends a query to the API of an external information service to obtain related information. The obtained information is formatted and sent back to the device, where it is displayed on the chat screen of the communication application.

[0282] For example, if a user types and sends "Is there anywhere fun to go this weekend?" into a communication application, the device will send the message to the server. The server will analyze the keywords "weekend" and "fun place" and the emotion "looking forward to" and obtain information on "activities to enjoy this weekend." Finally, the device will display "Here are some recommended activities for this weekend."

[0283] As described above, the system of the present invention can provide relevant information based on the user's emotions in real time, thereby improving the user experience.

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

[0285] Explain the program's processing flow in detail

[0286] Step 1: Divide into processing steps

[0287] Step 1: User types and sends a message in a communications application

[0288] Step 2: The device recognizes the sent message as text data and prepares to send it to the server.

[0289] Step 3: The device sends the text data to the server

[0290] Step 4: The server passes the received text data to the analysis module

[0291] Step 5: The server uses a natural language processing (NLP) engine to extract keywords from the text data.

[0292] Step 6: The server uses the emotion engine to analyze the user's emotions from the text data.

[0293] Step 7: The server generates a query to an external information service based on the extracted keywords and the recognized sentiment.

[0294] Step 8: The server queries the API of the external information service to obtain relevant information.

[0295] Step 9: The server formats the relevant information into a format that can be presented to the user.

[0296] Step 10: The server sends the relevant formatted information back to the device

[0297] Step 11: The device analyzes the relevant information received from the server and prepares it for display on the screen of the communication application.

[0298] Step 12: Display the relevant information acquired by the device on the chat screen of the communication application

[0299] Step 2: Detailed explanation of each processing step

[0300] Step 1:

[0301] Action: A user types a message in a communications application and presses send.

[0302] Input: A message typed by the user (e.g., "I'm tired after a busy day at work. Do you know anywhere good for dinner?").

[0303] Output: The user's input message is sent to the communication application.

[0304] Step 2:

[0305] How it works: The device recognizes the message as text data and prepares it for sending to the server. The message is converted to JSON format and encrypted using an encryption algorithm.

[0306] Input: The text message sent by the user.

[0307] Output: Encrypted text data in JSON format.

[0308] Step 3:

[0309] How it works: The device sends encrypted text data to the server using an HTTP request or web socket.

[0310] Input: Encrypted text data in JSON format.

[0311] Output: The text data sent to the server.

[0312] Step 4:

[0313] How it works: The server unpacks the received text data, cleanses it, and passes it to the analysis module.

[0314] Input: JSON format text data received from the terminal.

[0315] Output: Cleansed and converted text data into a parsable format.

[0316] Step 5:

[0317] How it works: The server invokes a natural language processing (NLP) engine to extract keywords from the text data. For example, it calls an NLP engine option (e.g., Google NLP API) to get related keywords such as "dinner," "place," and "tired."

[0318] Input: Cleansed text data.

[0319] Output: Extracted keywords (e.g. "dinner", "place", "tired").

[0320] Step 6:

[0321] How it works: The server uses an emotion engine to analyze the user's emotions from the text data. Using emotion engine options (e.g. IBM Watson Emotional Analysis), it recognizes the user's emotion of "fatigue" from the expression "tired."

[0322] Input: Cleansed text data.

[0323] Output: Extracted emotion (e.g., "fatigue").

[0324] Step 7:

[0325] How it works: The server generates queries to external information services based on the extracted keywords and the recognized sentiment. For example, it generates queries containing keywords such as "dinner," "place," and "relaxing."

[0326] Input: Extracted keywords and sentiment.

[0327] Output: The generated query (e.g., "recommended dinner places to relax").

[0328] Step 8:

[0329] How it works: The server sends a query to the API of an external information service to obtain related information. By sending a query to an external information service option (e.g., Google Places API), it obtains information on related restaurants and other places.

[0330] Input: The generated query.

[0331] Output: Relevant information retrieved from external information services (e.g., relaxing dinner places).

[0332] Step 9:

[0333] How it works: The server formats the relevant information it has retrieved into a form that can be presented to the user, using standard formats such as JSON or XML.

[0334] Input: The relevant information obtained.

[0335] Output: Formatted relevant information.

[0336] Step 10:

[0337] How it works: The server encrypts the relevant formatted information and sends it to the device. The communication protocol is HTTPS or WSS.

[0338] Input: Formatted relevant information.

[0339] Output: Encrypted relevant information sent to the device.

[0340] Step 11:

[0341] Operation: The device decrypts the relevant encrypted information received from the server and prepares it for display on the communication application screen, including layout and formatting of the information.

[0342] Input: Encrypted relevant information sent by the server.

[0343] Output: Relevant information decoded and ready to display.

[0344] Step 12:

[0345] How it works: The device displays the relevant information on the chat screen of the communication application, allowing the user to check information about relaxing dinner spots without interrupting the conversation.

[0346] Input: Decoded, viewable relevant information.

[0347] Output: Relevant information displayed on the chat screen.

[0348] (Application example 2)

[0349] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."

[0350] In modern brick-and-mortar stores, providing personalized information tailored to customer needs is difficult. In particular, when customers request product or service recommendations based on specific emotions or circumstances, it is difficult to respond promptly and appropriately to their requests. Conventional systems can only provide general information without considering the customer's emotions, which can lead to a decrease in customer satisfaction. Therefore, a system that can provide relevant information based on emotions is needed.

[0351] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.

[0352] In this invention, the server includes means for receiving text data, means for extracting keywords from the received text data, means for acquiring related information from an external information service based on the extracted keywords, means for displaying the acquired related information, means for analyzing user emotions, and means for adjusting the content of the related information to be provided based on the emotion analysis results. This makes it possible to analyze user emotions and provide personalized information based on the results in real time.

[0353] "Text data" refers to textual information that a user inputs and sends within a communication application.

[0354] "Keywords" are important phrases or words extracted from text data and are used to obtain related information.

[0355] "External information services" refer to information services and databases on the Internet, and are systems that have the function of providing related information.

[0356] "Related information" is information that is useful to the user and is obtained based on the extracted keywords and the user's feelings.

[0357] The "means for displaying" is a system that has the function of visualizing the acquired related information to the user through a user interface.

[0358] "Means for analyzing emotions" refers to technology and devices for recognizing and analyzing emotions from a user's text data.

[0359] The "adjustment means" is a function for appropriately changing the content and format of the related information to be provided based on the analyzed emotion results.

[0360] To implement this invention, it is necessary to build a system that analyzes text data entered by a user in a communication application in real time and provides related information using an emotion engine. This system uses the following hardware and software to perform specific data processing and calculations.

[0361] First, a user types and sends a message using a communication application. The communication application runs on a device such as a smartphone, smart glasses, or head-mounted display. The typed message is recognized as text data and prepared for transmission to the server. The message is converted into the appropriate format and encrypted.

[0362] Next, the device sends the text data to the server. This communication is performed in real time using HTTP requests or web sockets, and the encrypted data is securely sent to the server. The server then passes the received text data to a module for analysis, where it is cleansed and formatted.

[0363] The server then uses natural language processing (NLP) techniques, such as the Hugging Face Transformers library, to extract keywords from the text data. It then uses an emotion engine (e.g., an emotion classification model) to analyze the user's emotions from the text data. For example, it recognizes that the user is tired from the expression "tired."

[0364] The server generates a query to an external information service based on the extracted keywords and the recognized sentiment. This query is formatted as an API call. For example, a query such as "recommended dinner places to relax" is generated. The server sends the query to the API of the external information service to obtain related information. The obtained information is formatted in a format such as JSON or XML.

[0365] Finally, the server sends the formatted information back to the device. This communication is also encrypted and secure. The device analyzes the information received from the server and displays it on the user's communication application screen. Specifically, the information can be formatted and the layout can be set, allowing it to be seamlessly integrated into the chat screen.

[0366] Specific examples

[0367] Scene 1: Sentiment analysis when searching for a dinner spot

[0368] User: Messages "Where do you think we should go for dinner tonight? I'm really tired."

[0369] Server: Analyzes the message and recognizes the keywords "dinner" and "location" as well as the emotion "tired."

[0370] Server: Obtain information on "nearby restaurants where you can relax" based on the extracted keywords and sentiment.

[0371] Device: "Here are some recommended restaurants where you can relax," information is displayed on the communication application screen.

[0372] Scene 2: Emotional analysis when planning a day off

[0373] User: Sends a message saying, "Anywhere fun to go this weekend?"

[0374] Server: Analyzes the message and recognizes the keywords "weekend" and "fun place" as well as the emotion "looking forward to it."

[0375] Server: Obtain information on "activities to enjoy on the weekend" based on the extracted keywords and emotions.

[0376] Device: "Here are some recommended activities for the weekend" is displayed on the communication application screen.

[0377] Prompt Sentence Examples

[0378] User input: "Today is a special day and I want a special gift."

[0379] Emotion recognition result: "Joy"

[0380] Keyword extraction results: "celebration gift"

[0381] Generated API query: "celebration gift joy"

[0382] In this way, specific devices can be used to provide relevant information based on user sentiment and keywords in real time.

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

[0384] Step 1:

[0385] A user uses a communication application to type and send a message.

[0386] Input: Message text data from the user (e.g., "Today is a special day, and I want a special gift.")

[0387] Output: Message text data is input to the terminal

[0388] Specific operation: A user uses a device such as a smartphone to enter a message into a communication application and presses the send button.

[0389] Step 2:

[0390] The terminal recognizes the received message as text data and prepares to send it to the server.

[0391] Input: Message text data

[0392] Output: Encrypted text data

[0393] Specific operation: The device recognizes the message as text data, encrypts it, converts it into an appropriate format (e.g., JSON format), and prepares it for transmission to the server.

[0394] Step 3:

[0395] The terminal transmits the text data to the server.

[0396] Input: Encrypted text data

[0397] Output: Text data sent to the server

[0398] Specific operation: The device sends encrypted text data to the server in real time using HTTP requests or web sockets.

[0399] Step 4:

[0400] The server passes the received text data to a module for analysis.

[0401] Input: Text data sent to the server

[0402] Output: Cleansed text data

[0403] Specific operation: The server passes the received data to the data cleansing module, which removes unnecessary data and converts the format.

[0404] Step 5:

[0405] The server uses natural language processing (NLP) techniques to extract keywords from the text data.

[0406] Input: Cleansed text data

[0407] Output: Extracted keywords (e.g., "celebration" and "present")

[0408] How it works: The server uses natural language processing techniques such as Hugging Face's Transformers library to extract important keywords from the text data.

[0409] Step 6:

[0410] The server uses an emotion engine to analyze the user's emotions.

[0411] Input: Cleansed text data

[0412] Output: Parsed emotion (e.g. "joy")

[0413] Specific operation: The server uses an emotion classification model to analyze the user's emotions from the text data, and as a result, emotions such as "joy" are recognized.

[0414] Step 7:

[0415] The server generates a query to an external information service based on the extracted keywords and the recognized sentiment.

[0416] Input: extracted keywords and analyzed sentiment

[0417] Output: Generated query (e.g. "celebration gift joy")

[0418] Specific operation: The server combines the extracted keywords and emotions to generate a query for calling the API of an external information service.

[0419] Step 8:

[0420] The server sends a query to the API of an external information service to obtain relevant information.

[0421] Input: Generated query

[0422] Output: Retrieved related information (e.g., recommended items for special gifts)

[0423] Specific operation: The server calls the API and formats the retrieved relevant information in a format such as JSON or XML.

[0424] Step 9:

[0425] The server sends the relevant formatted information back to the terminal.

[0426] Input: Related information obtained

[0427] Output: Relevant information sent to the terminal

[0428] Specific operation: The server formats the relevant information in an appropriate format, encrypts it, and then sends it to the terminal.

[0429] Step 10:

[0430] The terminal analyzes the relevant information received from the server and displays it on the screen of the user's communication application.

[0431] Input: Relevant information sent to the terminal

[0432] Output: Relevant information displayed on the screen of the communication application

[0433] How it works: The device analyzes the received related information, formats and layouts it, and seamlessly integrates it into the chat screen. The related information is then displayed in a way that corresponds to the message entered by the user.

[0434] Through these steps, appropriate information based on user sentiment and text data can be provided in real time.

[0435] The specific processing unit 290 transmits the result of the specific processing to the smart device 14. In the smart device 14, the control unit 46A causes the output device 40 to output the result of the specific processing. The microphone 38B acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.

[0436] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.

[0437] In the above embodiment, an example in which the specific process is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific process may be performed by the smart device 14.

[0438] [Second embodiment]

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

[0440] 3, the data processing system 210 includes the data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.

[0441] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).

[0442] The smart glasses 214 include a computer 36, a microphone 238, a speaker 240, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, and the camera 42 are also connected to the bus 52.

[0443] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.

[0444] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).

[0445] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.

[0446] Fig. 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Fig. 4, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.

[0447] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.

[0448] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.

[0449] In the smart glasses 214, the reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.

[0450] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal."

[0451] The present invention provides a system that allows users to obtain related information while continuing a conversation within a communication application. This system has the functions of receiving text data, extracting keywords, obtaining related information from external information services, and displaying that information. Specific embodiments of this system are described below.

[0452] Program Overview

[0453] This system includes a communication application terminal and a server that performs analysis, keyword extraction, and data linkage with external information services. It analyzes text data entered by users in the communication application in real time and provides the necessary information.

[0454] Program processing

[0455] 1. Device: A user types and sends a message in a communication application (e.g., a messaging app). This message is recorded as text data on the device.

[0456] 2. Terminal: Sends the received text data to the server, where it is analyzed.

[0457] 3. Server: The server analyzes the received text data and extracts keywords based on the context. Natural language processing techniques are used to extract keywords. For example, if a user sends a message saying, "Where's a good place for dinner tonight?", "dinner" and "place" are extracted as keywords.

[0458] 4. Server: Using the extracted keywords, queries are sent to external information services (e.g., search engines or databases) to retrieve relevant information, such as a list of nearby restaurants or rankings of recommended places.

[0459] 5. Terminal: Receives the retrieved relevant information and displays it on the screen of the user's communication application, allowing the user to view relevant information in real time without interrupting the flow of conversation.

[0460] Specific use cases

[0461] Scene 1: Finding a place for dinner

[0462] User: Sends a message in a communications application saying, "Where do you think we should have dinner tonight?"

[0463] Terminal: Sends a message to the server.

[0464] Server: Analyzes the message and extracts the keywords "dinner" and "location."

[0465] Server: Sends a query to an external information service using the extracted keywords to obtain information on "nearby restaurants."

[0466] Device: Information such as "Here are some recommended restaurants nearby" will be displayed on the communication application screen.

[0467] Scene 2: Set a time to meet

[0468] User: Sends a message via a communication application saying, "Shall we meet in Shinjuku at 7pm?"

[0469] Terminal: Sends a message to the server.

[0470] Server: Analyze the message and extract the keywords "7pm" and "Shinjuku."

[0471] Server: Sends a query to an external information service using the extracted keywords to obtain information on "the weather in Shinjuku at 7 p.m." and "the best means of transportation to Shinjuku."

[0472] Terminal: Information such as "Here's the weather in Shinjuku at 7 p.m." and "Here's the best way to get to Shinjuku" is displayed on the communication application screen.

[0473] In this way, the system of the present invention allows users to quickly obtain relevant information without interrupting the conversation, enabling efficient and smooth communication.

[0474] The processing flow will be explained below.

[0475] Step 1:

[0476] User: Type and send a message within a communication application, for example, "Where's a good place for dinner tonight?"

[0477] Step 2:

[0478] Terminal: Recognizes the sent message as text data and prepares it for transmission to the server, converting it into the appropriate format and encrypting it.

[0479] Step 3:

[0480] Terminal: Sends text data to the server using HTTP requests or web sockets, and the data is sent to the server in real time.

[0481] Step 4:

[0482] Server: Passes the received text data to a module for analysis, where data cleansing and format conversion are performed.

[0483] Step 5:

[0484] Server: Uses natural language processing (NLP) technology to extract contextual keywords from text data. For example, in the previous example, "dinner" and "location" are extracted.

[0485] Step 6:

[0486] Server: Generates a query to an external information service based on the extracted keywords. This query is formatted as an API call.

[0487] Step 7:

[0488] Server: Sends a query to the API of an external information service to retrieve relevant information. For example, sending a query like "recommended places for dinner" to a search engine.

[0489] Step 8:

[0490] Server: Receives the relevant information and formats it for delivery to the user. Formats such as JSON or XML are common here.

[0491] Step 9:

[0492] Server: Formats and sends relevant information back to the device. This communication is also encrypted and secure.

[0493] Step 10:

[0494] Terminal: Analyzes the relevant information received from the server and prepares it for display on the user's communication application screen, including formatting and layout settings for the information.

[0495] Step 11:

[0496] On-device: The acquired relevant information is seamlessly integrated into the chat screen of a communication application, allowing users to view the information without interrupting the conversation.

[0497] Step 12:

[0498] User: Decides on the next action based on the relevant information presented, for example, replying "Let's try this restaurant" to keep the conversation moving.

[0499] Example 1

[0500] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."

[0501] Users of communication applications have a need to obtain necessary information without interrupting the conversation. Conventional systems require users to perform individual searches, making it difficult to obtain information efficiently. The present invention aims to solve this problem by providing a system that allows users to obtain relevant information in real time without interrupting the flow of conversation.

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

[0503] In this invention, the server includes means for receiving text data, means for analyzing the received text data and extracting keywords based on the context, and means for sending a query to an external information service based on the extracted keywords to obtain related information, thereby enabling a user to quickly and efficiently obtain related information in real time without interrupting the flow of conversation.

[0504] "Text data" refers to information in the form of a document sent by a user through a communication application.

[0505] "Analysis" refers to understanding the content of received text data and processing it to extract specific information.

[0506] "Keywords" refer to important words and phrases extracted from the analyzed text data.

[0507] "External information services" refer to services for obtaining information from outside sources, such as search engines and databases on the Internet.

[0508] A "query" refers to a command sent to an external information service for searching or retrieving information.

[0509] "Related information" refers to information obtained from an external information service based on the extracted keywords.

[0510] "Display" refers to visually presenting the retrieved relevant information to the user.

[0511] "Communications Application" refers to software that allows users to send and receive text messages.

[0512] "Generative AI models" refer to advanced machine learning algorithms used for natural language processing.

[0513] "Server" refers to a computer system for analyzing text data and linking with external information services.

[0514] "Terminal" refers to a device used by a user to access a communication application.

[0515] The present invention provides a system that allows users to obtain related information while continuing a conversation within a communication application. The system has the functions of receiving text data, extracting keywords, obtaining related information from external information services, and displaying the information.

[0516] System Overview

[0517] This system includes a terminal that runs a communication application and a server that performs analysis, keyword extraction, and data linkage with external information services. It analyzes text data entered by users in the communication application in real time and provides the necessary information.

[0518] Hardware and software used

[0519] Device: A device used by a user, such as a smartphone, tablet, or computer, that runs a communication application (e.g., a messaging app).

[0520] Server: A remote server for analyzing text data, extracting keywords, and connecting with external information services. Generative AI models such as BERT and GPT-3 are implemented on the server.

[0521] Program processing

[0522] 1. Terminal: A user types and sends a message in a communication application. The message is recorded as text data on the terminal.

[0523] 2. Terminal: Sends the received text data to the server, where it is analyzed.

[0524] 3. Server: Analyzes the received text data and extracts contextual keywords using natural language processing techniques (e.g., generative AI models like BERT and GPT-3).

[0525] 4. Server: Using the extracted keywords, queries are sent to external information services (e.g., search engines or databases) to retrieve relevant information.

[0526] 5. Terminal: Receives the retrieved relevant information and displays it on the screen of the user's communication application.

[0527] Specific examples

[0528] Scene 1: Finding a place for dinner

[0529] User: Sends a message in a communications application saying, "Where do you think we should have dinner tonight?"

[0530] Terminal: Sends a message to the server.

[0531] Server: Analyzes the message and extracts the keywords "dinner" and "location."

[0532] Server: Sends a query to an external information service using the extracted keywords to obtain information on "nearby restaurants."

[0533] Device: Information such as "Here are some recommended restaurants nearby" will be displayed on the communication application screen.

[0534] Scene 2: Set a time to meet

[0535] User: Sends a message via a communication application saying, "Shall we meet in Shinjuku at 7pm?"

[0536] Terminal: Sends a message to the server.

[0537] Server: Analyze the message and extract the keywords "7pm" and "Shinjuku."

[0538] Server: Sends a query to an external information service using the extracted keywords to obtain information on "the weather in Shinjuku at 7 p.m." and "the best means of transportation to Shinjuku."

[0539] Terminal: Information such as "Here's the weather in Shinjuku at 7 p.m." and "Here's the best way to get to Shinjuku" is displayed on the communication application screen.

[0540] This invention allows users to quickly obtain related information without interrupting a conversation, enabling efficient and smooth communication.

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

[0542] Step 1:

[0543] Terminal: A user types and sends messages in a communication application.

[0544] Specific actions: The user types "Where should we go for dinner tonight?" into a device (such as a smartphone or computer) and clicks the send button.

[0545] Input: User-entered message text: "Where would you like to eat dinner tonight?"

[0546] Output: The terminal's message sending function is fired and the message is logged.

[0547] Step 2:

[0548] Terminal: Sends the received text data to the server.

[0549] Specific behavior: Text data is packaged in JSON format and sent as an HTTP request to the specified endpoint on the server.

[0550] Input: Recorded text data "Where would you like to have dinner tonight?"

[0551] Output: Text data is sent to the server (e.g., a request to a "POST / messages" endpoint).

[0552] Step 3:

[0553] Server: Analyzes the received text data and extracts context-based keywords.

[0554] What it does: Passes incoming text data to an analysis engine (e.g., BERT or GPT-3) to understand the context and identify important words and phrases.

[0555] Input: Text data received by the server: "Where would you like to have dinner tonight?"

[0556] Output: Keywords extracted as analysis results: "dinner" and "location"

[0557] Step 4:

[0558] Server: Using the extracted keywords, queries are sent to external information services to obtain related information.

[0559] Specific behavior: Generates and sends the appropriate query string to external information services (e.g., Google Search API or Yelp API).

[0560] Input: Extracted keywords "dinner" and "location"

[0561] Output: Related information returned from an external information service (e.g., a list of "nearby restaurants")

[0562] Step 5:

[0563] Server: Formats the relevant information obtained and sends it to the device.

[0564] Specific operation: Organize the received related information in JSON format and send it to the terminal as an HTTP response.

[0565] Input: Related information obtained from an external information service (list of "nearby restaurants")

[0566] Output: Formatted response data

[0567] Step 6:

[0568] Terminal: Receives the retrieved relevant information and displays it on the screen of the user's communication application.

[0569] Specific behavior: Analyzes the received response and displays it in the user interface of the communication application.

[0570] Input: Formatted response data sent by the server

[0571] Output: Relevant information displayed in a user interface (e.g., "Here are some recommended restaurants nearby")

[0572] The above steps make the entire system work, allowing users to quickly obtain relevant information without interrupting the conversation.

[0573] (Application example 1)

[0574] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."

[0575] In conventional communication applications, it was difficult for users to obtain related information and content in real time while continuing a conversation, and they had to interrupt the conversation to search for information. Such interruptions ruined the user experience and hindered smooth communication. Furthermore, searching for related information took time and effort, making it difficult for users to quickly access the information they needed.

[0576] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.

[0577] In this invention, the server includes means for receiving text data, means for extracting keywords from the received text data, means for acquiring related information from external information services and information distribution services based on the extracted keywords, and means for responding to user input in real time using a chat function integrated into the communication application. This allows users to quickly access necessary information and related content without interrupting their conversation, resulting in smooth and efficient communication.

[0578] "Text data" refers to textual information that a user inputs or transmits through a communication application.

[0579] "Keywords" are important words or phrases extracted from text data, and related information is searched for based on these.

[0580] "External information services" refer to systems or platforms that provide information outside of communication applications, such as search engines and various databases.

[0581] "Related information" refers to information obtained from an external information service based on the extracted keywords, and is related to the content of the user's conversation.

[0582] An "information distribution service" refers to a system or platform that provides content requested by users, such as a video streaming service or a news site.

[0583] "Communications Application" means application software that enables users to communicate with other users through messaging, voice, or video.

[0584] "Chat function" refers to a function that allows users to exchange messages in real time within a communication application.

[0585] "Natural language processing technology" refers to a set of techniques and methods used by computers to understand, generate, and respond to human language.

[0586] "Real-time" refers to responding immediately to information entered by the user and processing or responding without delay.

[0587] "User" means any person or entity that uses a communication application to communicate with other users.

[0588] This invention provides a system that allows users to obtain relevant information and content in real time through text data. In particular, it is characterized by the ability to respond immediately to user input using a chat function integrated into a communication application.

[0589] System configuration

[0590] The system consists of the following main components:

[0591] Terminal: A device that allows a user to operate a communication application, such as a smartphone, tablet, or PC.

[0592] Server: This is the central system that analyzes text data, extracts keywords, and obtains information from external information services.

[0593] External information and distribution services: External systems that the server queries to retrieve information. Examples include search engines, databases, video streaming services, and news sites.

[0594] Program Overview

[0595] 1. Terminal: Receives text data sent by the user via a communication application.

[0596] 2. Server: Analyzes the received text data and extracts contextual keywords using natural language processing techniques, such as generative AI models like Hugging Face's Transformers.

[0597] 3. Server: Based on the extracted keywords, queries are sent to external information services and information distribution services to obtain related information and content.

[0598] 4. Terminal: Displays the acquired information and content in real time on the screen of the user's communication application.

[0599] Specific use cases

[0600] Scenario 1: Finding a Python tutorial

[0601] If a user types "I want to watch a Python tutorial" into a communication application, the server extracts the keywords "Python" and "tutorial" and retrieves related videos and articles from external information services. The device displays the retrieved information on the communication application screen, allowing the user to check the information immediately.

[0602] (Example of a prompt)

[0603] I want to see a Python tutorial.

[0604] Server processing

[0605] The server analyzes the received text data and uses a generative AI model to extract important keywords. It then sends queries to external information services and distribution services based on the keywords to retrieve relevant information. The retrieved information is then sent in an optimal format to the user's device and displayed in the communication application. This process allows users to access the information they need without interrupting their conversation.

[0606] In this way, through the entire system process, users can quickly access the information and content they need while maintaining efficient and smooth communication. This embodiment eliminates the inconvenience of information search in conventional communication applications and greatly improves the user experience.

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

[0608] Step 1:

[0609] A user types and sends a message in a communication application. In this step, text data is generated about a topic that the user is interested in. For example, the user types "I want to see a Python tutorial." This input becomes the text data that is processed in the next step.

[0610] Step 2:

[0611] The terminal receives the text data entered by the user and sends the text data to the server. In this step, the terminal plays the role of transferring the text data to the server. The input is the text data entered by the user, and the output is the text data sent to the server.

[0612] Step 3:

[0613] The server analyzes the received text data and uses a generative AI model to extract contextual keywords. For example, Hugging Face's Transformers is used. Here, the received text data is given as input, and natural language processing techniques are used to extract keywords such as "Python" and "tutorial." The output is these keywords.

[0614] Step 4:

[0615] The server sends queries to external information services and information distribution services based on the extracted keywords to obtain related information and content. For example, it sends queries to search engines and video distribution services. In this step, the extracted keywords are used as input, and the related information and content obtained from the information services is the output.

[0616] Step 5:

[0617] The server then formats the acquired relevant information and content into the most appropriate format and sends it to the device. Here, APIs and other tools are used to properly format the information. The input is the information acquired from outside, and the output is the formatted information.

[0618] Step 6:

[0619] The terminal receives the information sent from the server and displays it in real time on the screen of the communication application. The user can directly check the retrieved information and content. In this step, the terminal receives the information and displays it within the application. The input is the information received from the server, and the output is the information displayed on the UI of the communication application.

[0620] Through this series of processes, users can quickly access the information they need without interrupting the conversation. As a specific example of a prompt sentence, if you input "I want to watch a Python tutorial," related videos and articles will be retrieved and displayed in real time.

[0621] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.

[0622] This invention is a system that analyzes user conversations in a communication application in real time and combines it with an emotion engine to provide relevant information based on the user's emotions. This system has the functions of receiving text data, extracting keywords, obtaining related information from external information services, and displaying that information. The emotion engine also recognizes the user's emotions and adjusts the related information provided based on those emotions.

[0623] Program processing

[0624] 1. Terminal: A user types and sends a message within a communication application, for example, "I'm tired from a busy day at work. Do you know anywhere good for dinner?"

[0625] 2. Terminal: The terminal interprets the message as text data and prepares it for transmission to the server, where it is converted to the appropriate format and encrypted.

[0626] 3. Terminal: Sends text data to the server using HTTP requests or web sockets, and the data is sent to the server in real time.

[0627] 4. Server: The received text data is passed to the analysis module, where data cleansing and format conversion are performed.

[0628] 5. Server: Using natural language processing (NLP) technology, context-specific keywords are extracted from the text data. For example, keywords such as "dinner," "place," and "tired" are extracted.

[0629] 6. Server: Analyzes the user's emotions from text data using an emotion engine. For example, recognizes that the user is tired from the expression "tired."

[0630] 7. Server: Generates a query to an external information service based on the extracted keywords and the recognized sentiment. This query is formatted as an API call. For example, a query such as "recommended dinner places relaxing" is generated.

[0631] 8. Server: Sends a query to the API of an external information service to get relevant information. Sends the above query to a search engine to find a relaxing place for dinner.

[0632] 9. Server: Receives the relevant information and formats it for delivery to the user. The information is formatted in a format such as JSON or XML.

[0633] 10. Server: Formats and sends relevant information back to the device. This communication is also encrypted and secure.

[0634] 11. Terminal: Analyzes the relevant information received from the server and prepares it for display on the user's communication application screen, including formatting and layout of the information.

[0635] 12. Terminal: The retrieved relevant information is seamlessly integrated into the chat screen of a communication application, allowing users to view the information without interrupting the conversation.

[0636] Specific use cases

[0637] Scene 1: Sentiment analysis when searching for a dinner spot

[0638] User: Messages: "Where do you think we should go for dinner tonight? I'm really tired."

[0639] Terminal: Sends a message to the server.

[0640] Server: Analyzes the message and recognizes the keywords "dinner" and "location" as well as the emotion "tired."

[0641] Server: Obtain information on "nearby restaurants where you can relax" based on the extracted keywords and sentiment.

[0642] Device: "Here are some recommended restaurants where you can relax," the communication application screen displays.

[0643] Scene 2: Emotional analysis when planning a day off

[0644] User: Sends a message saying, "Anywhere fun to go this weekend?"

[0645] Terminal: Sends a message to the server.

[0646] Server: Analyzes the message and recognizes the keywords "weekend" and "fun place" as well as the emotion "looking forward to it."

[0647] Server: Obtain information on "weekend activities" based on the extracted keywords and sentiment.

[0648] Device: "Here are some recommended activities for the weekend" appears on the communications application screen.

[0649] In this way, by combining the emotion engine, the system of the present invention can provide appropriate information that matches the user's emotions, further improving the user experience.

[0650] The processing flow will be explained below.

[0651] Step 1:

[0652] User: Type and send a message within a communication application, for example, "I'm tired after a busy day at work. Do you know anywhere good for dinner?"

[0653] Step 2:

[0654] Terminal: Recognizes the sent message as text data and prepares it for transmission to the server, converting it into the appropriate format and encrypting it.

[0655] Step 3:

[0656] Terminal: Sends text data to the server using HTTP requests or web sockets, and the data is sent to the server in real time.

[0657] Step 4:

[0658] Server: Passes the received text data to the analysis module, where data cleansing and format conversion are performed.

[0659] Step 5:

[0660] Server: Using natural language processing (NLP) technology, it extracts context-specific keywords from the text data. For example, keywords such as "dinner," "place," and "tired" are extracted.

[0661] Step 6:

[0662] Server: Analyzes the user's emotions from text data using an emotion engine. For example, recognizes that the user is tired from the expression "tired."

[0663] Step 7:

[0664] Server: Generates a query to an external information service based on the extracted keywords and the recognized sentiment. This query is formatted as an API call. For example, a query such as "recommended dinner places relaxing" is generated.

[0665] Step 8:

[0666] Server: Sends a query to an external information service's API to retrieve relevant information. Sends the above query to a search engine to find a relaxing place for dinner.

[0667] Step 9:

[0668] Server: Receives the relevant information and formats it to be provided to the user. Here, the information is formatted into a format such as JSON or XML.

[0669] Step 10:

[0670] Server: Formats and sends relevant information back to the device. This communication is also encrypted and secure.

[0671] Step 11:

[0672] Terminal: Analyzes the relevant information received from the server and prepares it for display on the user's communication application screen, including formatting and layout settings for the information.

[0673] Step 12:

[0674] On-device: The acquired relevant information is seamlessly integrated into the chat screen of a communication application, allowing users to view the information without interrupting the conversation.

[0675] Step 13:

[0676] User: Decides on the next action based on the relevant information presented, for example, replying "Let's try this restaurant" to keep the conversation moving.

[0677] Example 2

[0678] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."

[0679] Conventional communication applications have limited means for providing relevant information based on the user's conversation content, making it difficult to provide information flexibly in response to the user's emotions. Furthermore, users cannot obtain appropriate information using vague expressions without entering specific keywords. This limits the user experience and hinders the improvement of user satisfaction.

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

[0681] In this invention, the server includes means for receiving text data, means for extracting keywords, means for analyzing the extracted emotions based on the keywords, and means for acquiring related information from an external information service based on the emotions and keywords. This makes it possible to provide related information according to the user's emotions. Furthermore, even if the user enters ambiguous expressions, appropriate information can be provided, which is expected to improve the user experience.

[0682] "Text data" refers to character string information sent by a user via a communication application.

[0683] "Keyword extraction" refers to the process of identifying and extracting important words and phrases from received text data.

[0684] "Sentiment analysis" refers to the process of identifying a user's emotional state from the words and context contained in text data.

[0685] "External information services" refers to external data providers that provide the necessary information through APIs or web services.

[0686] "Related information acquisition" refers to the process of acquiring information based on user input and emotions from external information services.

[0687] "Displaying information" refers to the process of presenting the relevant information obtained in a form that can be visually confirmed by the user.

[0688] This invention is a system that analyzes user conversations in a communication application in real time and combines it with an emotion engine to provide relevant information based on the user's emotions. This system has the functions of receiving text data, extracting keywords, obtaining related information from external information services, and displaying that information. The emotion engine also recognizes the user's emotions and adjusts the related information provided based on those emotions.

[0689] Hardware and software used

[0690] This system is implemented using the following hardware and software.

[0691] 1. Communication applications: Applications that run on smartphones or PCs and allow users to exchange messages with each other. For example, we will use a common messaging application.

[0692] 2. Server: Used to analyze the received text data, recognize emotions, and retrieve relevant information. For example, a cloud-based server (e.g., AWS, Azure) is used.

[0693] 3. Natural Language Processing Engine (NLP Engine): Used to extract keywords from text data. For example, Google NLP API is used.

[0694] 4. Emotion engine: Used to analyze user emotions from text data. For example, IBM Watson Emotional Analysis is used.

[0695] 5. APIs of external information services: Used to retrieve relevant information based on keywords and sentiment. For example, Google Places API is used.

[0696] 6. Communication protocol: HTTP requests and web sockets are used to communicate data between the terminal and the server, and between the server and external information services. HTTPS or WSS is used to encrypt the communication.

[0697] Specific examples

[0698] The device receives the user's message in the communication application and sends it to the server. The server analyzes the received message and extracts keywords using an NLP engine. It then analyzes the user's emotions using an emotion engine. Based on the extracted keywords and analyzed emotions, the server sends a query to the API of an external information service to obtain related information. The obtained information is formatted and sent back to the device, where it is displayed on the chat screen of the communication application.

[0699] For example, if a user types and sends "Is there anywhere fun to go this weekend?" into a communication application, the device will send the message to the server. The server will analyze the keywords "weekend" and "fun place" and the emotion "looking forward to" and obtain information on "activities to enjoy this weekend." Finally, the device will display "Here are some recommended activities for this weekend."

[0700] As described above, the system of the present invention can provide relevant information based on the user's emotions in real time, thereby improving the user experience.

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

[0702] Explain the program's processing flow in detail

[0703] Step 1: Divide into processing steps

[0704] Step 1: User types and sends a message in a communications application

[0705] Step 2: The device recognizes the sent message as text data and prepares to send it to the server.

[0706] Step 3: The device sends the text data to the server

[0707] Step 4: The server passes the received text data to the analysis module

[0708] Step 5: The server uses a natural language processing (NLP) engine to extract keywords from the text data.

[0709] Step 6: The server uses the emotion engine to analyze the user's emotions from the text data.

[0710] Step 7: The server generates a query to an external information service based on the extracted keywords and the recognized sentiment.

[0711] Step 8: The server queries the API of the external information service to obtain relevant information.

[0712] Step 9: The server formats the relevant information into a format that can be presented to the user.

[0713] Step 10: The server sends the relevant formatted information back to the device

[0714] Step 11: The device analyzes the relevant information received from the server and prepares it for display on the screen of the communication application.

[0715] Step 12: Display the relevant information acquired by the device on the chat screen of the communication application

[0716] Step 2: Detailed explanation of each processing step

[0717] Step 1:

[0718] Action: A user types a message in a communications application and presses send.

[0719] Input: A message typed by the user (e.g., "I'm tired after a busy day at work. Do you know anywhere good for dinner?").

[0720] Output: The user's input message is sent to the communication application.

[0721] Step 2:

[0722] How it works: The device recognizes the message as text data and prepares it for sending to the server. The message is converted to JSON format and encrypted using an encryption algorithm.

[0723] Input: The text message sent by the user.

[0724] Output: Encrypted text data in JSON format.

[0725] Step 3:

[0726] How it works: The device sends encrypted text data to the server using an HTTP request or web socket.

[0727] Input: Encrypted text data in JSON format.

[0728] Output: The text data sent to the server.

[0729] Step 4:

[0730] How it works: The server unpacks the received text data, cleanses it, and passes it to the analysis module.

[0731] Input: JSON format text data received from the terminal.

[0732] Output: Cleansed and converted text data into a parsable format.

[0733] Step 5:

[0734] How it works: The server invokes a natural language processing (NLP) engine to extract keywords from the text data. For example, it calls an NLP engine option (e.g., Google NLP API) to get related keywords such as "dinner," "place," and "tired."

[0735] Input: Cleansed text data.

[0736] Output: Extracted keywords (e.g. "dinner", "place", "tired").

[0737] Step 6:

[0738] How it works: The server uses an emotion engine to analyze the user's emotions from the text data. Using emotion engine options (e.g. IBM Watson Emotional Analysis), it recognizes the user's emotion of "fatigue" from the expression "tired."

[0739] Input: Cleansed text data.

[0740] Output: Extracted emotion (e.g., "fatigue").

[0741] Step 7:

[0742] How it works: The server generates queries to external information services based on the extracted keywords and the recognized sentiment. For example, it generates queries containing keywords such as "dinner," "place," and "relaxing."

[0743] Input: Extracted keywords and sentiment.

[0744] Output: The generated query (e.g., "recommended dinner places to relax").

[0745] Step 8:

[0746] How it works: The server sends a query to the API of an external information service to obtain related information. By sending a query to an external information service option (e.g., Google Places API), it obtains information on related restaurants and other places.

[0747] Input: The generated query.

[0748] Output: Relevant information retrieved from external information services (e.g., relaxing dinner places).

[0749] Step 9:

[0750] How it works: The server formats the relevant information it has retrieved into a form that can be presented to the user, using standard formats such as JSON or XML.

[0751] Input: The relevant information obtained.

[0752] Output: Formatted relevant information.

[0753] Step 10:

[0754] How it works: The server encrypts the relevant formatted information and sends it to the device. The communication protocol is HTTPS or WSS.

[0755] Input: Formatted relevant information.

[0756] Output: Encrypted relevant information sent to the device.

[0757] Step 11:

[0758] Operation: The device decrypts the relevant encrypted information received from the server and prepares it for display on the communication application screen, including layout and formatting of the information.

[0759] Input: Encrypted relevant information sent by the server.

[0760] Output: Relevant information decoded and ready to display.

[0761] Step 12:

[0762] How it works: The device displays the relevant information on the chat screen of the communication application, allowing the user to check information about relaxing dinner spots without interrupting the conversation.

[0763] Input: Decoded, viewable relevant information.

[0764] Output: Relevant information displayed on the chat screen.

[0765] (Application example 2)

[0766] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."

[0767] In modern brick-and-mortar stores, providing personalized information tailored to customer needs is difficult. In particular, when customers request product or service recommendations based on specific emotions or circumstances, it is difficult to respond promptly and appropriately to their requests. Conventional systems can only provide general information without considering the customer's emotions, which can lead to a decrease in customer satisfaction. Therefore, a system that can provide relevant information based on emotions is needed.

[0768] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.

[0769] In this invention, the server includes means for receiving text data, means for extracting keywords from the received text data, means for acquiring related information from an external information service based on the extracted keywords, means for displaying the acquired related information, means for analyzing user emotions, and means for adjusting the content of the related information to be provided based on the emotion analysis results. This makes it possible to analyze user emotions and provide personalized information based on the results in real time.

[0770] "Text data" refers to textual information that a user inputs and sends within a communication application.

[0771] "Keywords" are important phrases or words extracted from text data and are used to obtain related information.

[0772] "External information services" refer to information services and databases on the Internet, and are systems that have the function of providing related information.

[0773] "Related information" is information that is useful to the user and is obtained based on the extracted keywords and the user's feelings.

[0774] The "means for displaying" is a system that has the function of visualizing the acquired related information to the user through a user interface.

[0775] "Means for analyzing emotions" refers to technology and devices for recognizing and analyzing emotions from a user's text data.

[0776] The "adjustment means" is a function for appropriately changing the content and format of the related information to be provided based on the analyzed emotion results.

[0777] To implement this invention, it is necessary to build a system that analyzes text data entered by a user in a communication application in real time and provides related information using an emotion engine. This system uses the following hardware and software to perform specific data processing and calculations.

[0778] First, a user types and sends a message using a communication application. The communication application runs on a device such as a smartphone, smart glasses, or head-mounted display. The typed message is recognized as text data and prepared for transmission to the server. The message is converted into the appropriate format and encrypted.

[0779] Next, the device sends the text data to the server. This communication is performed in real time using HTTP requests or web sockets, and the encrypted data is securely sent to the server. The server then passes the received text data to a module for analysis, where it is cleansed and formatted.

[0780] The server then uses natural language processing (NLP) techniques, such as the Hugging Face Transformers library, to extract keywords from the text data. It then uses an emotion engine (e.g., an emotion classification model) to analyze the user's emotions from the text data. For example, it recognizes that the user is tired from the expression "tired."

[0781] The server generates a query to an external information service based on the extracted keywords and the recognized sentiment. This query is formatted as an API call. For example, a query such as "recommended dinner places to relax" is generated. The server sends the query to the API of the external information service to obtain related information. The obtained information is formatted in a format such as JSON or XML.

[0782] Finally, the server sends the formatted information back to the device. This communication is also encrypted and secure. The device analyzes the information received from the server and displays it on the user's communication application screen. Specifically, the information can be formatted and the layout can be set, allowing it to be seamlessly integrated into the chat screen.

[0783] Specific examples

[0784] Scene 1: Sentiment analysis when searching for a dinner spot

[0785] User: Messages "Where do you think we should go for dinner tonight? I'm really tired."

[0786] Server: Analyzes the message and recognizes the keywords "dinner" and "location" as well as the emotion "tired."

[0787] Server: Obtain information on "nearby restaurants where you can relax" based on the extracted keywords and sentiment.

[0788] Device: "Here are some recommended restaurants where you can relax," information is displayed on the communication application screen.

[0789] Scene 2: Emotional analysis when planning a day off

[0790] User: Sends a message saying, "Anywhere fun to go this weekend?"

[0791] Server: Analyzes the message and recognizes the keywords "weekend" and "fun place" as well as the emotion "looking forward to it."

[0792] Server: Obtain information on "activities to enjoy on the weekend" based on the extracted keywords and emotions.

[0793] Device: "Here are some recommended activities for the weekend" is displayed on the communication application screen.

[0794] Prompt Sentence Examples

[0795] User input: "Today is a special day and I want a special gift."

[0796] Emotion recognition result: "Joy"

[0797] Keyword extraction results: "celebration gift"

[0798] Generated API query: "celebration gift joy"

[0799] In this way, specific devices can be used to provide relevant information based on user sentiment and keywords in real time.

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

[0801] Step 1:

[0802] A user uses a communication application to type and send a message.

[0803] Input: Message text data from the user (e.g., "Today is a special day, and I want a special gift.")

[0804] Output: Message text data is input to the terminal

[0805] Specific operation: A user uses a device such as a smartphone to enter a message into a communication application and presses the send button.

[0806] Step 2:

[0807] The terminal recognizes the received message as text data and prepares to send it to the server.

[0808] Input: Message text data

[0809] Output: Encrypted text data

[0810] Specific operation: The device recognizes the message as text data, encrypts it, converts it into an appropriate format (e.g., JSON format), and prepares it for transmission to the server.

[0811] Step 3:

[0812] The terminal transmits the text data to the server.

[0813] Input: Encrypted text data

[0814] Output: Text data sent to the server

[0815] Specific operation: The device sends encrypted text data to the server in real time using HTTP requests or web sockets.

[0816] Step 4:

[0817] The server passes the received text data to a module for analysis.

[0818] Input: Text data sent to the server

[0819] Output: Cleansed text data

[0820] Specific operation: The server passes the received data to the data cleansing module, which removes unnecessary data and converts the format.

[0821] Step 5:

[0822] The server uses natural language processing (NLP) techniques to extract keywords from the text data.

[0823] Input: Cleansed text data

[0824] Output: Extracted keywords (e.g., "celebration" and "present")

[0825] How it works: The server uses natural language processing techniques such as Hugging Face's Transformers library to extract important keywords from the text data.

[0826] Step 6:

[0827] The server uses an emotion engine to analyze the user's emotions.

[0828] Input: Cleansed text data

[0829] Output: Parsed emotion (e.g. "joy")

[0830] Specific operation: The server uses an emotion classification model to analyze the user's emotions from the text data, and as a result, emotions such as "joy" are recognized.

[0831] Step 7:

[0832] The server generates a query to an external information service based on the extracted keywords and the recognized sentiment.

[0833] Input: extracted keywords and analyzed sentiment

[0834] Output: Generated query (e.g. "celebration gift joy")

[0835] Specific operation: The server combines the extracted keywords and emotions to generate a query for calling the API of an external information service.

[0836] Step 8:

[0837] The server sends a query to the API of an external information service to obtain relevant information.

[0838] Input: Generated query

[0839] Output: Retrieved related information (e.g., recommended items for special gifts)

[0840] Specific operation: The server calls the API and formats the retrieved relevant information in a format such as JSON or XML.

[0841] Step 9:

[0842] The server sends the relevant formatted information back to the terminal.

[0843] Input: Related information obtained

[0844] Output: Relevant information sent to the terminal

[0845] Specific operation: The server formats the relevant information in an appropriate format, encrypts it, and then sends it to the terminal.

[0846] Step 10:

[0847] The terminal analyzes the relevant information received from the server and displays it on the screen of the user's communication application.

[0848] Input: Relevant information sent to the terminal

[0849] Output: Relevant information displayed on the screen of the communication application

[0850] How it works: The device analyzes the received related information, formats and layouts it, and seamlessly integrates it into the chat screen. The related information is then displayed in a way that corresponds to the message entered by the user.

[0851] Through these steps, appropriate information based on user sentiment and text data can be provided in real time.

[0852] The specific processing unit 290 transmits the result of the specific processing to the smart glasses 214. In the smart glasses 214, the control unit 46A causes the speaker 240 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.

[0853] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.

[0854] In the above embodiment, an example in which the specific processing is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the smart glasses 214.

[0855] [Third embodiment]

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

[0857] 5, the data processing system 310 includes the data processing device 12 and a headset terminal 314. An example of the data processing device 12 is a server.

[0858] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).

[0859] The headset type terminal 314 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a display 343. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the display 343 are also connected to the bus 52.

[0860] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.

[0861] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).

[0862] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.

[0863] Fig. 6 shows an example of the main functions of the data processing device 12 and the headset type terminal 314. As shown in Fig. 6, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.

[0864] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.

[0865] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.

[0866] In the headset type terminal 314, a reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.

[0867] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as the "server" and the headset type terminal 314 will be referred to as the "terminal."

[0868] The present invention provides a system that allows users to obtain related information while continuing a conversation within a communication application. This system has the functions of receiving text data, extracting keywords, obtaining related information from external information services, and displaying that information. Specific embodiments of this system are described below.

[0869] Program Overview

[0870] This system includes a communication application terminal and a server that performs analysis, keyword extraction, and data linkage with external information services. It analyzes text data entered by users in the communication application in real time and provides the necessary information.

[0871] Program processing

[0872] 1. Device: A user types and sends a message in a communication application (e.g., a messaging app). This message is recorded as text data on the device.

[0873] 2. Terminal: Sends the received text data to the server, where it is analyzed.

[0874] 3. Server: The server analyzes the received text data and extracts keywords based on the context. Natural language processing techniques are used to extract keywords. For example, if a user sends a message saying, "Where's a good place for dinner tonight?", "dinner" and "place" are extracted as keywords.

[0875] 4. Server: Using the extracted keywords, queries are sent to external information services (e.g., search engines or databases) to retrieve relevant information, such as a list of nearby restaurants or rankings of recommended places.

[0876] 5. Terminal: Receives the retrieved relevant information and displays it on the screen of the user's communication application, allowing the user to view relevant information in real time without interrupting the flow of conversation.

[0877] Specific use cases

[0878] Scene 1: Finding a place for dinner

[0879] User: Sends a message in a communications application saying, "Where do you think we should have dinner tonight?"

[0880] Terminal: Sends a message to the server.

[0881] Server: Analyzes the message and extracts the keywords "dinner" and "location."

[0882] Server: Sends a query to an external information service using the extracted keywords to obtain information on "nearby restaurants."

[0883] Device: Information such as "Here are some recommended restaurants nearby" will be displayed on the communication application screen.

[0884] Scene 2: Set a time to meet

[0885] User: Sends a message via a communication application saying, "Shall we meet in Shinjuku at 7pm?"

[0886] Terminal: Sends a message to the server.

[0887] Server: Analyze the message and extract the keywords "7pm" and "Shinjuku."

[0888] Server: Sends a query to an external information service using the extracted keywords to obtain information on "the weather in Shinjuku at 7 p.m." and "the best means of transportation to Shinjuku."

[0889] Terminal: Information such as "Here's the weather in Shinjuku at 7 p.m." and "Here's the best way to get to Shinjuku" is displayed on the communication application screen.

[0890] In this way, the system of the present invention allows users to quickly obtain relevant information without interrupting the conversation, enabling efficient and smooth communication.

[0891] The processing flow will be explained below.

[0892] Step 1:

[0893] User: Type and send a message within a communication application, for example, "Where's a good place for dinner tonight?"

[0894] Step 2:

[0895] Terminal: Recognizes the sent message as text data and prepares it for transmission to the server, converting it into the appropriate format and encrypting it.

[0896] Step 3:

[0897] Terminal: Sends text data to the server using HTTP requests or web sockets, and the data is sent to the server in real time.

[0898] Step 4:

[0899] Server: Passes the received text data to a module for analysis, where data cleansing and format conversion are performed.

[0900] Step 5:

[0901] Server: Uses natural language processing (NLP) technology to extract contextual keywords from text data. For example, in the previous example, "dinner" and "location" are extracted.

[0902] Step 6:

[0903] Server: Generates a query to an external information service based on the extracted keywords. This query is formatted as an API call.

[0904] Step 7:

[0905] Server: Sends a query to the API of an external information service to retrieve relevant information. For example, sending a query like "recommended places for dinner" to a search engine.

[0906] Step 8:

[0907] Server: Receives the relevant information and formats it for delivery to the user. Formats such as JSON or XML are common here.

[0908] Step 9:

[0909] Server: Formats and sends relevant information back to the device. This communication is also encrypted and secure.

[0910] Step 10:

[0911] Terminal: Analyzes the relevant information received from the server and prepares it for display on the user's communication application screen, including formatting and layout settings for the information.

[0912] Step 11:

[0913] On-device: The acquired relevant information is seamlessly integrated into the chat screen of a communication application, allowing users to view the information without interrupting the conversation.

[0914] Step 12:

[0915] User: Decides on the next action based on the relevant information presented, for example, replying "Let's try this restaurant" to keep the conversation moving.

[0916] Example 1

[0917] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."

[0918] Users of communication applications have a need to obtain necessary information without interrupting the conversation. Conventional systems require users to perform individual searches, making it difficult to obtain information efficiently. The present invention aims to solve this problem by providing a system that allows users to obtain relevant information in real time without interrupting the flow of conversation.

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

[0920] In this invention, the server includes means for receiving text data, means for analyzing the received text data and extracting keywords based on the context, and means for sending a query to an external information service based on the extracted keywords to obtain related information, thereby enabling a user to quickly and efficiently obtain related information in real time without interrupting the flow of conversation.

[0921] "Text data" refers to information in the form of a document sent by a user through a communication application.

[0922] "Analysis" refers to understanding the content of received text data and processing it to extract specific information.

[0923] "Keywords" refer to important words and phrases extracted from the analyzed text data.

[0924] "External information services" refer to services for obtaining information from outside sources, such as search engines and databases on the Internet.

[0925] A "query" refers to a command sent to an external information service for searching or retrieving information.

[0926] "Related information" refers to information obtained from an external information service based on the extracted keywords.

[0927] "Display" refers to visually presenting the retrieved relevant information to the user.

[0928] "Communications Application" refers to software that allows users to send and receive text messages.

[0929] "Generative AI models" refer to advanced machine learning algorithms used for natural language processing.

[0930] "Server" refers to a computer system for analyzing text data and linking with external information services.

[0931] "Terminal" refers to a device used by a user to access a communication application.

[0932] The present invention provides a system that allows users to obtain related information while continuing a conversation within a communication application. The system has the functions of receiving text data, extracting keywords, obtaining related information from external information services, and displaying the information.

[0933] System Overview

[0934] This system includes a terminal that runs a communication application and a server that performs analysis, keyword extraction, and data linkage with external information services. It analyzes text data entered by users in the communication application in real time and provides the necessary information.

[0935] Hardware and software used

[0936] Device: A device used by a user, such as a smartphone, tablet, or computer, that runs a communication application (e.g., a messaging app).

[0937] Server: A remote server for analyzing text data, extracting keywords, and connecting with external information services. Generative AI models such as BERT and GPT-3 are implemented on the server.

[0938] Program processing

[0939] 1. Terminal: A user types and sends a message in a communication application. The message is recorded as text data on the terminal.

[0940] 2. Terminal: Sends the received text data to the server, where it is analyzed.

[0941] 3. Server: Analyzes the received text data and extracts contextual keywords using natural language processing techniques (e.g., generative AI models like BERT and GPT-3).

[0942] 4. Server: Using the extracted keywords, queries are sent to external information services (e.g., search engines or databases) to retrieve relevant information.

[0943] 5. Terminal: Receives the retrieved relevant information and displays it on the screen of the user's communication application.

[0944] Specific examples

[0945] Scene 1: Finding a place for dinner

[0946] User: Sends a message in a communications application saying, "Where do you think we should have dinner tonight?"

[0947] Terminal: Sends a message to the server.

[0948] Server: Analyzes the message and extracts the keywords "dinner" and "location."

[0949] Server: Sends a query to an external information service using the extracted keywords to obtain information on "nearby restaurants."

[0950] Device: Information such as "Here are some recommended restaurants nearby" will be displayed on the communication application screen.

[0951] Scene 2: Set a time to meet

[0952] User: Sends a message via a communication application saying, "Shall we meet in Shinjuku at 7pm?"

[0953] Terminal: Sends a message to the server.

[0954] Server: Analyze the message and extract the keywords "7pm" and "Shinjuku."

[0955] Server: Sends a query to an external information service using the extracted keywords to obtain information on "the weather in Shinjuku at 7 p.m." and "the best means of transportation to Shinjuku."

[0956] Terminal: Information such as "Here's the weather in Shinjuku at 7 p.m." and "Here's the best way to get to Shinjuku" is displayed on the communication application screen.

[0957] This invention allows users to quickly obtain related information without interrupting a conversation, enabling efficient and smooth communication.

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

[0959] Step 1:

[0960] Terminal: A user types and sends messages in a communication application.

[0961] Specific actions: The user types "Where should we go for dinner tonight?" into a device (such as a smartphone or computer) and clicks the send button.

[0962] Input: User-entered message text: "Where would you like to eat dinner tonight?"

[0963] Output: The terminal's message sending function is fired and the message is logged.

[0964] Step 2:

[0965] Terminal: Sends the received text data to the server.

[0966] Specific behavior: Text data is packaged in JSON format and sent as an HTTP request to the specified endpoint on the server.

[0967] Input: Recorded text data "Where would you like to have dinner tonight?"

[0968] Output: Text data is sent to the server (e.g., a request to a "POST / messages" endpoint).

[0969] Step 3:

[0970] Server: Analyzes the received text data and extracts context-based keywords.

[0971] What it does: Passes incoming text data to an analysis engine (e.g., BERT or GPT-3) to understand the context and identify important words and phrases.

[0972] Input: Text data received by the server: "Where would you like to have dinner tonight?"

[0973] Output: Keywords extracted as analysis results: "dinner" and "location"

[0974] Step 4:

[0975] Server: Using the extracted keywords, queries are sent to external information services to obtain related information.

[0976] Specific behavior: Generates and sends the appropriate query string to external information services (e.g., Google Search API or Yelp API).

[0977] Input: Extracted keywords "dinner" and "location"

[0978] Output: Related information returned from an external information service (e.g., a list of "nearby restaurants")

[0979] Step 5:

[0980] Server: Formats the relevant information obtained and sends it to the device.

[0981] Specific operation: Organize the received related information in JSON format and send it to the terminal as an HTTP response.

[0982] Input: Related information obtained from an external information service (list of "nearby restaurants")

[0983] Output: Formatted response data

[0984] Step 6:

[0985] Terminal: Receives the retrieved relevant information and displays it on the screen of the user's communication application.

[0986] Specific behavior: Analyzes the received response and displays it in the user interface of the communication application.

[0987] Input: Formatted response data sent by the server

[0988] Output: Relevant information displayed in a user interface (e.g., "Here are some recommended restaurants nearby")

[0989] The above steps make the entire system work, allowing users to quickly obtain relevant information without interrupting the conversation.

[0990] (Application example 1)

[0991] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."

[0992] In conventional communication applications, it was difficult for users to obtain related information and content in real time while continuing a conversation, and they had to interrupt the conversation to search for information. Such interruptions ruined the user experience and hindered smooth communication. Furthermore, searching for related information took time and effort, making it difficult for users to quickly access the information they needed.

[0993] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.

[0994] In this invention, the server includes means for receiving text data, means for extracting keywords from the received text data, means for acquiring related information from external information services and information distribution services based on the extracted keywords, and means for responding to user input in real time using a chat function integrated into the communication application. This allows users to quickly access necessary information and related content without interrupting their conversation, resulting in smooth and efficient communication.

[0995] "Text data" refers to textual information that a user inputs or transmits through a communication application.

[0996] "Keywords" are important words or phrases extracted from text data, and related information is searched for based on these.

[0997] "External information services" refer to systems or platforms that provide information outside of communication applications, such as search engines and various databases.

[0998] "Related information" refers to information obtained from an external information service based on the extracted keywords, and is related to the content of the user's conversation.

[0999] An "information distribution service" refers to a system or platform that provides content requested by users, such as a video streaming service or a news site.

[1000] "Communications Application" means application software that enables users to communicate with other users through messaging, voice, or video.

[1001] "Chat function" refers to a function that allows users to exchange messages in real time within a communication application.

[1002] "Natural language processing technology" refers to a set of techniques and methods used by computers to understand, generate, and respond to human language.

[1003] "Real-time" refers to responding immediately to information entered by the user and processing or responding without delay.

[1004] "User" means any person or entity that uses a communication application to communicate with other users.

[1005] This invention provides a system that allows users to obtain relevant information and content in real time through text data. In particular, it is characterized by the ability to respond immediately to user input using a chat function integrated into a communication application.

[1006] System configuration

[1007] The system consists of the following main components:

[1008] Terminal: A device that allows a user to operate a communication application, such as a smartphone, tablet, or PC.

[1009] Server: This is the central system that analyzes text data, extracts keywords, and obtains information from external information services.

[1010] External information and distribution services: External systems that the server queries to retrieve information. Examples include search engines, databases, video streaming services, and news sites.

[1011] Program Overview

[1012] 1. Terminal: Receives text data sent by the user via a communication application.

[1013] 2. Server: Analyzes the received text data and extracts contextual keywords using natural language processing techniques, such as generative AI models like Hugging Face's Transformers.

[1014] 3. Server: Based on the extracted keywords, queries are sent to external information services and information distribution services to obtain related information and content.

[1015] 4. Terminal: Displays the acquired information and content in real time on the screen of the user's communication application.

[1016] Specific use cases

[1017] Scenario 1: Finding a Python tutorial

[1018] If a user types "I want to watch a Python tutorial" into a communication application, the server extracts the keywords "Python" and "tutorial" and retrieves related videos and articles from external information services. The device displays the retrieved information on the communication application screen, allowing the user to check the information immediately.

[1019] (Example of a prompt)

[1020] I want to see a Python tutorial.

[1021] Server processing

[1022] The server analyzes the received text data and uses a generative AI model to extract important keywords. It then sends queries to external information services and distribution services based on the keywords to retrieve relevant information. The retrieved information is then sent in an optimal format to the user's device and displayed in the communication application. This process allows users to access the information they need without interrupting their conversation.

[1023] In this way, through the entire system process, users can quickly access the information and content they need while maintaining efficient and smooth communication. This embodiment eliminates the inconvenience of information search in conventional communication applications and greatly improves the user experience.

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

[1025] Step 1:

[1026] A user types and sends a message in a communication application. In this step, text data is generated about a topic that the user is interested in. For example, the user types "I want to see a Python tutorial." This input becomes the text data that is processed in the next step.

[1027] Step 2:

[1028] The terminal receives the text data entered by the user and sends the text data to the server. In this step, the terminal plays the role of transferring the text data to the server. The input is the text data entered by the user, and the output is the text data sent to the server.

[1029] Step 3:

[1030] The server analyzes the received text data and uses a generative AI model to extract contextual keywords. For example, Hugging Face's Transformers is used. Here, the received text data is given as input, and natural language processing techniques are used to extract keywords such as "Python" and "tutorial." The output is these keywords.

[1031] Step 4:

[1032] The server sends queries to external information services and information distribution services based on the extracted keywords to obtain related information and content. For example, it sends queries to search engines and video distribution services. In this step, the extracted keywords are used as input, and the related information and content obtained from the information services is the output.

[1033] Step 5:

[1034] The server then formats the acquired relevant information and content into the most appropriate format and sends it to the device. Here, APIs and other tools are used to properly format the information. The input is the information acquired from outside, and the output is the formatted information.

[1035] Step 6:

[1036] The terminal receives the information sent from the server and displays it in real time on the screen of the communication application. The user can directly check the retrieved information and content. In this step, the terminal receives the information and displays it within the application. The input is the information received from the server, and the output is the information displayed on the UI of the communication application.

[1037] Through this series of processes, users can quickly access the information they need without interrupting the conversation. As a specific example of a prompt sentence, if you input "I want to watch a Python tutorial," related videos and articles will be retrieved and displayed in real time.

[1038] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.

[1039] This invention is a system that analyzes user conversations in a communication application in real time and combines it with an emotion engine to provide relevant information based on the user's emotions. This system has the functions of receiving text data, extracting keywords, obtaining related information from external information services, and displaying that information. The emotion engine also recognizes the user's emotions and adjusts the related information provided based on those emotions.

[1040] Program processing

[1041] 1. Terminal: A user types and sends a message within a communication application, for example, "I'm tired from a busy day at work. Do you know anywhere good for dinner?"

[1042] 2. Terminal: The terminal interprets the message as text data and prepares it for transmission to the server, where it is converted to the appropriate format and encrypted.

[1043] 3. Terminal: Sends text data to the server using HTTP requests or web sockets, and the data is sent to the server in real time.

[1044] 4. Server: The received text data is passed to the analysis module, where data cleansing and format conversion are performed.

[1045] 5. Server: Using natural language processing (NLP) technology, context-specific keywords are extracted from the text data. For example, keywords such as "dinner," "place," and "tired" are extracted.

[1046] 6. Server: Analyzes the user's emotions from text data using an emotion engine. For example, recognizes that the user is tired from the expression "tired."

[1047] 7. Server: Generates a query to an external information service based on the extracted keywords and the recognized sentiment. This query is formatted as an API call. For example, a query such as "recommended dinner places relaxing" is generated.

[1048] 8. Server: Sends a query to the API of an external information service to get relevant information. Sends the above query to a search engine to find a relaxing place for dinner.

[1049] 9. Server: Receives the relevant information and formats it for delivery to the user. The information is formatted in a format such as JSON or XML.

[1050] 10. Server: Formats and sends relevant information back to the device. This communication is also encrypted and secure.

[1051] 11. Terminal: Analyzes the relevant information received from the server and prepares it for display on the user's communication application screen, including formatting and layout of the information.

[1052] 12. Terminal: The retrieved relevant information is seamlessly integrated into the chat screen of a communication application, allowing users to view the information without interrupting the conversation.

[1053] Specific use cases

[1054] Scene 1: Sentiment analysis when searching for a dinner spot

[1055] User: Messages: "Where do you think we should go for dinner tonight? I'm really tired."

[1056] Terminal: Sends a message to the server.

[1057] Server: Analyzes the message and recognizes the keywords "dinner" and "location" as well as the emotion "tired."

[1058] Server: Obtain information on "nearby restaurants where you can relax" based on the extracted keywords and sentiment.

[1059] Device: "Here are some recommended restaurants where you can relax," the communication application screen displays.

[1060] Scene 2: Emotional analysis when planning a day off

[1061] User: Sends a message saying, "Anywhere fun to go this weekend?"

[1062] Terminal: Sends a message to the server.

[1063] Server: Analyzes the message and recognizes the keywords "weekend" and "fun place" as well as the emotion "looking forward to it."

[1064] Server: Obtain information on "weekend activities" based on the extracted keywords and sentiment.

[1065] Device: "Here are some recommended activities for the weekend" appears on the communications application screen.

[1066] In this way, by combining the emotion engine, the system of the present invention can provide appropriate information that matches the user's emotions, further improving the user experience.

[1067] The processing flow will be explained below.

[1068] Step 1:

[1069] User: Type and send a message within a communication application, for example, "I'm tired after a busy day at work. Do you know anywhere good for dinner?"

[1070] Step 2:

[1071] Terminal: Recognizes the sent message as text data and prepares it for transmission to the server, converting it into the appropriate format and encrypting it.

[1072] Step 3:

[1073] Terminal: Sends text data to the server using HTTP requests or web sockets, and the data is sent to the server in real time.

[1074] Step 4:

[1075] Server: Passes the received text data to the analysis module, where data cleansing and format conversion are performed.

[1076] Step 5:

[1077] Server: Using natural language processing (NLP) technology, it extracts context-specific keywords from the text data. For example, keywords such as "dinner," "place," and "tired" are extracted.

[1078] Step 6:

[1079] Server: Analyzes the user's emotions from text data using an emotion engine. For example, recognizes that the user is tired from the expression "tired."

[1080] Step 7:

[1081] Server: Generates a query to an external information service based on the extracted keywords and the recognized sentiment. This query is formatted as an API call. For example, a query such as "recommended dinner places relaxing" is generated.

[1082] Step 8:

[1083] Server: Sends a query to an external information service's API to retrieve relevant information. Sends the above query to a search engine to find a relaxing place for dinner.

[1084] Step 9:

[1085] Server: Receives the relevant information and formats it to be provided to the user. Here, the information is formatted into a format such as JSON or XML.

[1086] Step 10:

[1087] Server: Formats and sends relevant information back to the device. This communication is also encrypted and secure.

[1088] Step 11:

[1089] Terminal: Analyzes the relevant information received from the server and prepares it for display on the user's communication application screen, including formatting and layout settings for the information.

[1090] Step 12:

[1091] On-device: The acquired relevant information is seamlessly integrated into the chat screen of a communication application, allowing users to view the information without interrupting the conversation.

[1092] Step 13:

[1093] User: Decides on the next action based on the relevant information presented, for example, replying "Let's try this restaurant" to keep the conversation moving.

[1094] Example 2

[1095] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."

[1096] Conventional communication applications have limited means for providing relevant information based on the user's conversation content, making it difficult to provide information flexibly in response to the user's emotions. Furthermore, users cannot obtain appropriate information using vague expressions without entering specific keywords. This limits the user experience and hinders the improvement of user satisfaction.

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

[1098] In this invention, the server includes means for receiving text data, means for extracting keywords, means for analyzing the extracted emotions based on the keywords, and means for acquiring related information from an external information service based on the emotions and keywords. This makes it possible to provide related information according to the user's emotions. Furthermore, even if the user enters ambiguous expressions, appropriate information can be provided, which is expected to improve the user experience.

[1099] "Text data" refers to character string information sent by a user via a communication application.

[1100] "Keyword extraction" refers to the process of identifying and extracting important words and phrases from received text data.

[1101] "Sentiment analysis" refers to the process of identifying a user's emotional state from the words and context contained in text data.

[1102] "External information services" refers to external data providers that provide the necessary information through APIs or web services.

[1103] "Related information acquisition" refers to the process of acquiring information based on user input and emotions from external information services.

[1104] "Displaying information" refers to the process of presenting the relevant information obtained in a form that can be visually confirmed by the user.

[1105] This invention is a system that analyzes user conversations in a communication application in real time and combines it with an emotion engine to provide relevant information based on the user's emotions. This system has the functions of receiving text data, extracting keywords, obtaining related information from external information services, and displaying that information. The emotion engine also recognizes the user's emotions and adjusts the related information provided based on those emotions.

[1106] Hardware and software used

[1107] This system is implemented using the following hardware and software.

[1108] 1. Communication applications: Applications that run on smartphones or PCs and allow users to exchange messages with each other. For example, we will use a common messaging application.

[1109] 2. Server: Used to analyze the received text data, recognize emotions, and retrieve relevant information. For example, a cloud-based server (e.g., AWS, Azure) is used.

[1110] 3. Natural Language Processing Engine (NLP Engine): Used to extract keywords from text data. For example, Google NLP API is used.

[1111] 4. Emotion engine: Used to analyze user emotions from text data. For example, IBM Watson Emotional Analysis is used.

[1112] 5. APIs of external information services: Used to retrieve relevant information based on keywords and sentiment. For example, Google Places API is used.

[1113] 6. Communication protocol: HTTP requests and web sockets are used to communicate data between the terminal and the server, and between the server and external information services. HTTPS or WSS is used to encrypt the communication.

[1114] Specific examples

[1115] The device receives the user's message in the communication application and sends it to the server. The server analyzes the received message and extracts keywords using an NLP engine. It then analyzes the user's emotions using an emotion engine. Based on the extracted keywords and analyzed emotions, the server sends a query to the API of an external information service to obtain related information. The obtained information is formatted and sent back to the device, where it is displayed on the chat screen of the communication application.

[1116] For example, if a user types and sends "Is there anywhere fun to go this weekend?" into a communication application, the device will send the message to the server. The server will analyze the keywords "weekend" and "fun place" and the emotion "looking forward to" and obtain information on "activities to enjoy this weekend." Finally, the device will display "Here are some recommended activities for this weekend."

[1117] As described above, the system of the present invention can provide relevant information based on the user's emotions in real time, thereby improving the user experience.

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

[1119] Explain the program's processing flow in detail

[1120] Step 1: Divide into processing steps

[1121] Step 1: User types and sends a message in a communications application

[1122] Step 2: The device recognizes the sent message as text data and prepares to send it to the server.

[1123] Step 3: The device sends the text data to the server

[1124] Step 4: The server passes the received text data to the analysis module

[1125] Step 5: The server uses a natural language processing (NLP) engine to extract keywords from the text data.

[1126] Step 6: The server uses the emotion engine to analyze the user's emotions from the text data.

[1127] Step 7: The server generates a query to an external information service based on the extracted keywords and the recognized sentiment.

[1128] Step 8: The server queries the API of the external information service to obtain relevant information.

[1129] Step 9: The server formats the relevant information into a format that can be presented to the user.

[1130] Step 10: The server sends the relevant formatted information back to the device

[1131] Step 11: The device analyzes the relevant information received from the server and prepares it for display on the screen of the communication application.

[1132] Step 12: Display the relevant information acquired by the device on the chat screen of the communication application

[1133] Step 2: Detailed explanation of each processing step

[1134] Step 1:

[1135] Action: A user types a message in a communications application and presses send.

[1136] Input: A message typed by the user (e.g., "I'm tired after a busy day at work. Do you know anywhere good for dinner?").

[1137] Output: The user's input message is sent to the communication application.

[1138] Step 2:

[1139] How it works: The device recognizes the message as text data and prepares it for sending to the server. The message is converted to JSON format and encrypted using an encryption algorithm.

[1140] Input: The text message sent by the user.

[1141] Output: Encrypted text data in JSON format.

[1142] Step 3:

[1143] How it works: The device sends encrypted text data to the server using an HTTP request or web socket.

[1144] Input: Encrypted text data in JSON format.

[1145] Output: The text data sent to the server.

[1146] Step 4:

[1147] How it works: The server unpacks the received text data, cleanses it, and passes it to the analysis module.

[1148] Input: JSON format text data received from the terminal.

[1149] Output: Cleansed and converted text data into a parsable format.

[1150] Step 5:

[1151] How it works: The server invokes a natural language processing (NLP) engine to extract keywords from the text data. For example, it calls an NLP engine option (e.g., Google NLP API) to get related keywords such as "dinner," "place," and "tired."

[1152] Input: Cleansed text data.

[1153] Output: Extracted keywords (e.g. "dinner", "place", "tired").

[1154] Step 6:

[1155] How it works: The server uses an emotion engine to analyze the user's emotions from the text data. Using emotion engine options (e.g. IBM Watson Emotional Analysis), it recognizes the user's emotion of "fatigue" from the expression "tired."

[1156] Input: Cleansed text data.

[1157] Output: Extracted emotion (e.g., "fatigue").

[1158] Step 7:

[1159] How it works: The server generates queries to external information services based on the extracted keywords and the recognized sentiment. For example, it generates queries containing keywords such as "dinner," "place," and "relaxing."

[1160] Input: Extracted keywords and sentiment.

[1161] Output: The generated query (e.g., "recommended dinner places to relax").

[1162] Step 8:

[1163] How it works: The server sends a query to the API of an external information service to obtain related information. By sending a query to an external information service option (e.g., Google Places API), it obtains information on related restaurants and other places.

[1164] Input: The generated query.

[1165] Output: Relevant information retrieved from external information services (e.g., relaxing dinner places).

[1166] Step 9:

[1167] How it works: The server formats the relevant information it has retrieved into a form that can be presented to the user, using standard formats such as JSON or XML.

[1168] Input: The relevant information obtained.

[1169] Output: Formatted relevant information.

[1170] Step 10:

[1171] How it works: The server encrypts the relevant formatted information and sends it to the device. The communication protocol is HTTPS or WSS.

[1172] Input: Formatted relevant information.

[1173] Output: Encrypted relevant information sent to the device.

[1174] Step 11:

[1175] Operation: The device decrypts the relevant encrypted information received from the server and prepares it for display on the communication application screen, including layout and formatting of the information.

[1176] Input: Encrypted relevant information sent by the server.

[1177] Output: Relevant information decoded and ready to display.

[1178] Step 12:

[1179] How it works: The device displays the relevant information on the chat screen of the communication application, allowing the user to check information about relaxing dinner spots without interrupting the conversation.

[1180] Input: Decoded, viewable relevant information.

[1181] Output: Relevant information displayed on the chat screen.

[1182] (Application example 2)

[1183] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."

[1184] In modern brick-and-mortar stores, providing personalized information tailored to customer needs is difficult. In particular, when customers request product or service recommendations based on specific emotions or circumstances, it is difficult to respond promptly and appropriately to their requests. Conventional systems can only provide general information without considering the customer's emotions, which can lead to a decrease in customer satisfaction. Therefore, a system that can provide relevant information based on emotions is needed.

[1185] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.

[1186] In this invention, the server includes means for receiving text data, means for extracting keywords from the received text data, means for acquiring related information from an external information service based on the extracted keywords, means for displaying the acquired related information, means for analyzing user emotions, and means for adjusting the content of the related information to be provided based on the emotion analysis results. This makes it possible to analyze user emotions and provide personalized information based on the results in real time.

[1187] "Text data" refers to textual information that a user inputs and sends within a communication application.

[1188] "Keywords" are important phrases or words extracted from text data and are used to obtain related information.

[1189] "External information services" refer to information services and databases on the Internet, and are systems that have the function of providing related information.

[1190] "Related information" is information that is useful to the user and is obtained based on the extracted keywords and the user's feelings.

[1191] The "means for displaying" is a system that has the function of visualizing the acquired related information to the user through a user interface.

[1192] "Means for analyzing emotions" refers to technology and devices for recognizing and analyzing emotions from a user's text data.

[1193] The "adjustment means" is a function for appropriately changing the content and format of the related information to be provided based on the analyzed emotion results.

[1194] To implement this invention, it is necessary to build a system that analyzes text data entered by a user in a communication application in real time and provides related information using an emotion engine. This system uses the following hardware and software to perform specific data processing and calculations.

[1195] First, a user types and sends a message using a communication application. The communication application runs on a device such as a smartphone, smart glasses, or head-mounted display. The typed message is recognized as text data and prepared for transmission to the server. The message is converted into the appropriate format and encrypted.

[1196] Next, the device sends the text data to the server. This communication is performed in real time using HTTP requests or web sockets, and the encrypted data is securely sent to the server. The server then passes the received text data to a module for analysis, where it is cleansed and formatted.

[1197] The server then uses natural language processing (NLP) techniques, such as the Hugging Face Transformers library, to extract keywords from the text data. It then uses an emotion engine (e.g., an emotion classification model) to analyze the user's emotions from the text data. For example, it recognizes that the user is tired from the expression "tired."

[1198] The server generates a query to an external information service based on the extracted keywords and the recognized sentiment. This query is formatted as an API call. For example, a query such as "recommended dinner places to relax" is generated. The server sends the query to the API of the external information service to obtain related information. The obtained information is formatted in a format such as JSON or XML.

[1199] Finally, the server sends the formatted information back to the device. This communication is also encrypted and secure. The device analyzes the information received from the server and displays it on the user's communication application screen. Specifically, the information can be formatted and the layout can be set, allowing it to be seamlessly integrated into the chat screen.

[1200] Specific examples

[1201] Scene 1: Sentiment analysis when searching for a dinner spot

[1202] User: Messages "Where do you think we should go for dinner tonight? I'm really tired."

[1203] Server: Analyzes the message and recognizes the keywords "dinner" and "location" as well as the emotion "tired."

[1204] Server: Obtain information on "nearby restaurants where you can relax" based on the extracted keywords and sentiment.

[1205] Device: "Here are some recommended restaurants where you can relax," information is displayed on the communication application screen.

[1206] Scene 2: Emotional analysis when planning a day off

[1207] User: Sends a message saying, "Anywhere fun to go this weekend?"

[1208] Server: Analyzes the message and recognizes the keywords "weekend" and "fun place" as well as the emotion "looking forward to it."

[1209] Server: Obtain information on "activities to enjoy on the weekend" based on the extracted keywords and emotions.

[1210] Device: "Here are some recommended activities for the weekend" is displayed on the communication application screen.

[1211] Prompt Sentence Examples

[1212] User input: "Today is a special day and I want a special gift."

[1213] Emotion recognition result: "Joy"

[1214] Keyword extraction results: "celebration gift"

[1215] Generated API query: "celebration gift joy"

[1216] In this way, specific devices can be used to provide relevant information based on user sentiment and keywords in real time.

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

[1218] Step 1:

[1219] A user uses a communication application to type and send a message.

[1220] Input: Message text data from the user (e.g., "Today is a special day, and I want a special gift.")

[1221] Output: Message text data is input to the terminal

[1222] Specific operation: A user uses a device such as a smartphone to enter a message into a communication application and presses the send button.

[1223] Step 2:

[1224] The terminal recognizes the received message as text data and prepares to send it to the server.

[1225] Input: Message text data

[1226] Output: Encrypted text data

[1227] Specific operation: The device recognizes the message as text data, encrypts it, converts it into an appropriate format (e.g., JSON format), and prepares it for transmission to the server.

[1228] Step 3:

[1229] The terminal transmits the text data to the server.

[1230] Input: Encrypted text data

[1231] Output: Text data sent to the server

[1232] Specific operation: The device sends encrypted text data to the server in real time using HTTP requests or web sockets.

[1233] Step 4:

[1234] The server passes the received text data to a module for analysis.

[1235] Input: Text data sent to the server

[1236] Output: Cleansed text data

[1237] Specific operation: The server passes the received data to the data cleansing module, which removes unnecessary data and converts the format.

[1238] Step 5:

[1239] The server uses natural language processing (NLP) techniques to extract keywords from the text data.

[1240] Input: Cleansed text data

[1241] Output: Extracted keywords (e.g., "celebration" and "present")

[1242] How it works: The server uses natural language processing techniques such as Hugging Face's Transformers library to extract important keywords from the text data.

[1243] Step 6:

[1244] The server uses an emotion engine to analyze the user's emotions.

[1245] Input: Cleansed text data

[1246] Output: Parsed emotion (e.g. "joy")

[1247] Specific operation: The server uses an emotion classification model to analyze the user's emotions from the text data, and as a result, emotions such as "joy" are recognized.

[1248] Step 7:

[1249] The server generates a query to an external information service based on the extracted keywords and the recognized sentiment.

[1250] Input: extracted keywords and analyzed sentiment

[1251] Output: Generated query (e.g. "celebration gift joy")

[1252] Specific operation: The server combines the extracted keywords and emotions to generate a query for calling the API of an external information service.

[1253] Step 8:

[1254] The server sends a query to the API of an external information service to obtain relevant information.

[1255] Input: Generated query

[1256] Output: Retrieved related information (e.g., recommended items for special gifts)

[1257] Specific operation: The server calls the API and formats the retrieved relevant information in a format such as JSON or XML.

[1258] Step 9:

[1259] The server sends the relevant formatted information back to the terminal.

[1260] Input: Related information obtained

[1261] Output: Relevant information sent to the terminal

[1262] Specific operation: The server formats the relevant information in an appropriate format, encrypts it, and then sends it to the terminal.

[1263] Step 10:

[1264] The terminal analyzes the relevant information received from the server and displays it on the screen of the user's communication application.

[1265] Input: Relevant information sent to the terminal

[1266] Output: Relevant information displayed on the screen of the communication application

[1267] How it works: The device analyzes the received related information, formats and layouts it, and seamlessly integrates it into the chat screen. The related information is then displayed in a way that corresponds to the message entered by the user.

[1268] Through these steps, appropriate information based on user sentiment and text data can be provided in real time.

[1269] The specific processing unit 290 transmits the result of the specific processing to the headset type terminal 314. In the headset type terminal 314, the control unit 46A causes the speaker 240 and the display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.

[1270] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.

[1271] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the headset type terminal 314.

[1272] [Fourth embodiment]

[1273] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.

[1274] 7, a data processing system 410 includes a data processing device 12 and a robot 414. An example of the data processing device 12 is a server.

[1275] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).

[1276] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a control target 443. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the control target 443 are also connected to the bus 52.

[1277] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.

[1278] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).

[1279] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.

[1280] The control object 443 includes a display device, LEDs in the eyes, and motors for driving the arms, hands, and feet. The posture and gestures of the robot 414 are controlled by controlling the motors of the arms, hands, and feet. Some of the emotions of the robot 414 can be expressed by controlling these motors. In addition, the facial expressions of the robot 414 can also be expressed by controlling the light emission state of the LEDs in the eyes of the robot 414.

[1281] Fig. 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Fig. 8, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.

[1282] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.

[1283] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.

[1284] In the robot 414, the processor 46 performs the reception output process. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.

[1285] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."

[1286] The present invention provides a system that allows users to obtain related information while continuing a conversation within a communication application. This system has the functions of receiving text data, extracting keywords, obtaining related information from external information services, and displaying that information. Specific embodiments of this system are described below.

[1287] Program Overview

[1288] This system includes a communication application terminal and a server that performs analysis, keyword extraction, and data linkage with external information services. It analyzes text data entered by users in the communication application in real time and provides the necessary information.

[1289] Program processing

[1290] 1. Device: A user types and sends a message in a communication application (e.g., a messaging app). This message is recorded as text data on the device.

[1291] 2. Terminal: Sends the received text data to the server, where it is analyzed.

[1292] 3. Server: The server analyzes the received text data and extracts keywords based on the context. Natural language processing techniques are used to extract keywords. For example, if a user sends a message saying, "Where's a good place for dinner tonight?", "dinner" and "place" are extracted as keywords.

[1293] 4. Server: Using the extracted keywords, queries are sent to external information services (e.g., search engines or databases) to retrieve relevant information, such as a list of nearby restaurants or rankings of recommended places.

[1294] 5. Terminal: Receives the retrieved relevant information and displays it on the screen of the user's communication application, allowing the user to view relevant information in real time without interrupting the flow of conversation.

[1295] Specific use cases

[1296] Scene 1: Finding a place for dinner

[1297] User: Sends a message in a communications application saying, "Where do you think we should have dinner tonight?"

[1298] Terminal: Sends a message to the server.

[1299] Server: Analyzes the message and extracts the keywords "dinner" and "location."

[1300] Server: Sends a query to an external information service using the extracted keywords to obtain information on "nearby restaurants."

[1301] Device: Information such as "Here are some recommended restaurants nearby" will be displayed on the communication application screen.

[1302] Scene 2: Set a time to meet

[1303] User: Sends a message via a communication application saying, "Shall we meet in Shinjuku at 7pm?"

[1304] Terminal: Sends a message to the server.

[1305] Server: Analyze the message and extract the keywords "7pm" and "Shinjuku."

[1306] Server: Sends a query to an external information service using the extracted keywords to obtain information on "the weather in Shinjuku at 7 p.m." and "the best means of transportation to Shinjuku."

[1307] Terminal: Information such as "Here's the weather in Shinjuku at 7 p.m." and "Here's the best way to get to Shinjuku" is displayed on the communication application screen.

[1308] In this way, the system of the present invention allows users to quickly obtain relevant information without interrupting the conversation, enabling efficient and smooth communication.

[1309] The processing flow will be explained below.

[1310] Step 1:

[1311] User: Type and send a message within a communication application, for example, "Where's a good place for dinner tonight?"

[1312] Step 2:

[1313] Terminal: Recognizes the sent message as text data and prepares it for transmission to the server, converting it into the appropriate format and encrypting it.

[1314] Step 3:

[1315] Terminal: Sends text data to the server using HTTP requests or web sockets, and the data is sent to the server in real time.

[1316] Step 4:

[1317] Server: Passes the received text data to a module for analysis, where data cleansing and format conversion are performed.

[1318] Step 5:

[1319] Server: Uses natural language processing (NLP) technology to extract contextual keywords from text data. For example, in the previous example, "dinner" and "location" are extracted.

[1320] Step 6:

[1321] Server: Generates a query to an external information service based on the extracted keywords. This query is formatted as an API call.

[1322] Step 7:

[1323] Server: Sends a query to the API of an external information service to retrieve relevant information. For example, sending a query like "recommended places for dinner" to a search engine.

[1324] Step 8:

[1325] Server: Receives the relevant information and formats it for delivery to the user. Formats such as JSON or XML are common here.

[1326] Step 9:

[1327] Server: Formats and sends relevant information back to the device. This communication is also encrypted and secure.

[1328] Step 10:

[1329] Terminal: Analyzes the relevant information received from the server and prepares it for display on the user's communication application screen, including formatting and layout settings for the information.

[1330] Step 11:

[1331] On-device: The acquired relevant information is seamlessly integrated into the chat screen of a communication application, allowing users to view the information without interrupting the conversation.

[1332] Step 12:

[1333] User: Decides on the next action based on the relevant information presented, for example, replying "Let's try this restaurant" to keep the conversation moving.

[1334] Example 1

[1335] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."

[1336] Users of communication applications have a need to obtain necessary information without interrupting the conversation. Conventional systems require users to perform individual searches, making it difficult to obtain information efficiently. The present invention aims to solve this problem by providing a system that allows users to obtain relevant information in real time without interrupting the flow of conversation.

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

[1338] In this invention, the server includes means for receiving text data, means for analyzing the received text data and extracting keywords based on the context, and means for sending a query to an external information service based on the extracted keywords to obtain related information, thereby enabling a user to quickly and efficiently obtain related information in real time without interrupting the flow of conversation.

[1339] "Text data" refers to information in the form of a document sent by a user through a communication application.

[1340] "Analysis" refers to understanding the content of received text data and processing it to extract specific information.

[1341] "Keywords" refer to important words and phrases extracted from the analyzed text data.

[1342] "External information services" refer to services for obtaining information from outside sources, such as search engines and databases on the Internet.

[1343] A "query" refers to a command sent to an external information service for searching or retrieving information.

[1344] "Related information" refers to information obtained from an external information service based on the extracted keywords.

[1345] "Display" refers to visually presenting the retrieved relevant information to the user.

[1346] "Communications Application" refers to software that allows users to send and receive text messages.

[1347] "Generative AI models" refer to advanced machine learning algorithms used for natural language processing.

[1348] "Server" refers to a computer system for analyzing text data and linking with external information services.

[1349] "Terminal" refers to a device used by a user to access a communication application.

[1350] The present invention provides a system that allows users to obtain related information while continuing a conversation within a communication application. The system has the functions of receiving text data, extracting keywords, obtaining related information from external information services, and displaying the information.

[1351] System Overview

[1352] This system includes a terminal that runs a communication application and a server that performs analysis, keyword extraction, and data linkage with external information services. It analyzes text data entered by users in the communication application in real time and provides the necessary information.

[1353] Hardware and software used

[1354] Device: A device used by a user, such as a smartphone, tablet, or computer, that runs a communication application (e.g., a messaging app).

[1355] Server: A remote server for analyzing text data, extracting keywords, and connecting with external information services. Generative AI models such as BERT and GPT-3 are implemented on the server.

[1356] Program processing

[1357] 1. Terminal: A user types and sends a message in a communication application. The message is recorded as text data on the terminal.

[1358] 2. Terminal: Sends the received text data to the server, where it is analyzed.

[1359] 3. Server: Analyzes the received text data and extracts contextual keywords using natural language processing techniques (e.g., generative AI models like BERT and GPT-3).

[1360] 4. Server: Using the extracted keywords, queries are sent to external information services (e.g., search engines or databases) to retrieve relevant information.

[1361] 5. Terminal: Receives the retrieved relevant information and displays it on the screen of the user's communication application.

[1362] Specific examples

[1363] Scene 1: Finding a place for dinner

[1364] User: Sends a message in a communications application saying, "Where do you think we should have dinner tonight?"

[1365] Terminal: Sends a message to the server.

[1366] Server: Analyzes the message and extracts the keywords "dinner" and "location."

[1367] Server: Sends a query to an external information service using the extracted keywords to obtain information on "nearby restaurants."

[1368] Device: Information such as "Here are some recommended restaurants nearby" will be displayed on the communication application screen.

[1369] Scene 2: Set a time to meet

[1370] User: Sends a message via a communication application saying, "Shall we meet in Shinjuku at 7pm?"

[1371] Terminal: Sends a message to the server.

[1372] Server: Analyze the message and extract the keywords "7pm" and "Shinjuku."

[1373] Server: Sends a query to an external information service using the extracted keywords to obtain information on "the weather in Shinjuku at 7 p.m." and "the best means of transportation to Shinjuku."

[1374] Terminal: Information such as "Here's the weather in Shinjuku at 7 p.m." and "Here's the best way to get to Shinjuku" is displayed on the communication application screen.

[1375] This invention allows users to quickly obtain related information without interrupting a conversation, enabling efficient and smooth communication.

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

[1377] Step 1:

[1378] Terminal: A user types and sends messages in a communication application.

[1379] Specific actions: The user types "Where should we go for dinner tonight?" into a device (such as a smartphone or computer) and clicks the send button.

[1380] Input: User-entered message text: "Where would you like to eat dinner tonight?"

[1381] Output: The terminal's message sending function is fired and the message is logged.

[1382] Step 2:

[1383] Terminal: Sends the received text data to the server.

[1384] Specific behavior: Text data is packaged in JSON format and sent as an HTTP request to the specified endpoint on the server.

[1385] Input: Recorded text data "Where would you like to have dinner tonight?"

[1386] Output: Text data is sent to the server (e.g., a request to a "POST / messages" endpoint).

[1387] Step 3:

[1388] Server: Analyzes the received text data and extracts context-based keywords.

[1389] What it does: Passes incoming text data to an analysis engine (e.g., BERT or GPT-3) to understand the context and identify important words and phrases.

[1390] Input: Text data received by the server: "Where would you like to have dinner tonight?"

[1391] Output: Keywords extracted as analysis results: "dinner" and "location"

[1392] Step 4:

[1393] Server: Using the extracted keywords, queries are sent to external information services to obtain related information.

[1394] Specific behavior: Generates and sends the appropriate query string to external information services (e.g., Google Search API or Yelp API).

[1395] Input: Extracted keywords "dinner" and "location"

[1396] Output: Related information returned from an external information service (e.g., a list of "nearby restaurants")

[1397] Step 5:

[1398] Server: Formats the relevant information obtained and sends it to the device.

[1399] Specific operation: Organize the received related information in JSON format and send it to the terminal as an HTTP response.

[1400] Input: Related information obtained from an external information service (list of "nearby restaurants")

[1401] Output: Formatted response data

[1402] Step 6:

[1403] Terminal: Receives the retrieved relevant information and displays it on the screen of the user's communication application.

[1404] Specific behavior: Analyzes the received response and displays it in the user interface of the communication application.

[1405] Input: Formatted response data sent by the server

[1406] Output: Relevant information displayed in a user interface (e.g., "Here are some recommended restaurants nearby")

[1407] The above steps make the entire system work, allowing users to quickly obtain relevant information without interrupting the conversation.

[1408] (Application example 1)

[1409] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."

[1410] In conventional communication applications, it was difficult for users to obtain related information and content in real time while continuing a conversation, and they had to interrupt the conversation to search for information. Such interruptions ruined the user experience and hindered smooth communication. Furthermore, searching for related information took time and effort, making it difficult for users to quickly access the information they needed.

[1411] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.

[1412] In this invention, the server includes means for receiving text data, means for extracting keywords from the received text data, means for acquiring related information from external information services and information distribution services based on the extracted keywords, and means for responding to user input in real time using a chat function integrated into the communication application. This allows users to quickly access necessary information and related content without interrupting their conversation, resulting in smooth and efficient communication.

[1413] "Text data" refers to textual information that a user inputs or transmits through a communication application.

[1414] "Keywords" are important words or phrases extracted from text data, and related information is searched for based on these.

[1415] "External information services" refer to systems or platforms that provide information outside of communication applications, such as search engines and various databases.

[1416] "Related information" refers to information obtained from an external information service based on the extracted keywords, and is related to the content of the user's conversation.

[1417] An "information distribution service" refers to a system or platform that provides content requested by users, such as a video streaming service or a news site.

[1418] "Communications Application" means application software that enables users to communicate with other users through messaging, voice, or video.

[1419] "Chat function" refers to a function that allows users to exchange messages in real time within a communication application.

[1420] "Natural language processing technology" refers to a set of techniques and methods used by computers to understand, generate, and respond to human language.

[1421] "Real-time" refers to responding immediately to information entered by the user and processing or responding without delay.

[1422] "User" means any person or entity that uses a communication application to communicate with other users.

[1423] This invention provides a system that allows users to obtain relevant information and content in real time through text data. In particular, it is characterized by the ability to respond immediately to user input using a chat function integrated into a communication application.

[1424] System configuration

[1425] The system consists of the following main components:

[1426] Terminal: A device that allows a user to operate a communication application, such as a smartphone, tablet, or PC.

[1427] Server: This is the central system that analyzes text data, extracts keywords, and obtains information from external information services.

[1428] External information and distribution services: External systems that the server queries to retrieve information. Examples include search engines, databases, video streaming services, and news sites.

[1429] Program Overview

[1430] 1. Terminal: Receives text data sent by the user via a communication application.

[1431] 2. Server: Analyzes the received text data and extracts contextual keywords using natural language processing techniques, such as generative AI models like Hugging Face's Transformers.

[1432] 3. Server: Based on the extracted keywords, queries are sent to external information services and information distribution services to obtain related information and content.

[1433] 4. Terminal: Displays the acquired information and content in real time on the screen of the user's communication application.

[1434] Specific use cases

[1435] Scenario 1: Finding a Python tutorial

[1436] If a user types "I want to watch a Python tutorial" into a communication application, the server extracts the keywords "Python" and "tutorial" and retrieves related videos and articles from external information services. The device displays the retrieved information on the communication application screen, allowing the user to check the information immediately.

[1437] (Example of a prompt)

[1438] I want to see a Python tutorial.

[1439] Server processing

[1440] The server analyzes the received text data and uses a generative AI model to extract important keywords. It then sends queries to external information services and distribution services based on the keywords to retrieve relevant information. The retrieved information is then sent in an optimal format to the user's device and displayed in the communication application. This process allows users to access the information they need without interrupting their conversation.

[1441] In this way, through the entire system process, users can quickly access the information and content they need while maintaining efficient and smooth communication. This embodiment eliminates the inconvenience of information search in conventional communication applications and greatly improves the user experience.

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

[1443] Step 1:

[1444] A user types and sends a message in a communication application. In this step, text data is generated about a topic that the user is interested in. For example, the user types "I want to see a Python tutorial." This input becomes the text data that is processed in the next step.

[1445] Step 2:

[1446] The terminal receives the text data entered by the user and sends the text data to the server. In this step, the terminal plays the role of transferring the text data to the server. The input is the text data entered by the user, and the output is the text data sent to the server.

[1447] Step 3:

[1448] The server analyzes the received text data and uses a generative AI model to extract contextual keywords. For example, Hugging Face's Transformers is used. Here, the received text data is given as input, and natural language processing techniques are used to extract keywords such as "Python" and "tutorial." The output is these keywords.

[1449] Step 4:

[1450] The server sends queries to external information services and information distribution services based on the extracted keywords to obtain related information and content. For example, it sends queries to search engines and video distribution services. In this step, the extracted keywords are used as input, and the related information and content obtained from the information services is the output.

[1451] Step 5:

[1452] The server then formats the acquired relevant information and content into the most appropriate format and sends it to the device. Here, APIs and other tools are used to properly format the information. The input is the information acquired from outside, and the output is the formatted information.

[1453] Step 6:

[1454] The terminal receives the information sent from the server and displays it in real time on the screen of the communication application. The user can directly check the retrieved information and content. In this step, the terminal receives the information and displays it within the application. The input is the information received from the server, and the output is the information displayed on the UI of the communication application.

[1455] Through this series of processes, users can quickly access the information they need without interrupting the conversation. As a specific example of a prompt sentence, if you input "I want to watch a Python tutorial," related videos and articles will be retrieved and displayed in real time.

[1456] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.

[1457] This invention is a system that analyzes user conversations in a communication application in real time and combines it with an emotion engine to provide relevant information based on the user's emotions. This system has the functions of receiving text data, extracting keywords, obtaining related information from external information services, and displaying that information. The emotion engine also recognizes the user's emotions and adjusts the related information provided based on those emotions.

[1458] Program processing

[1459] 1. Terminal: A user types and sends a message within a communication application, for example, "I'm tired from a busy day at work. Do you know anywhere good for dinner?"

[1460] 2. Terminal: The terminal interprets the message as text data and prepares it for transmission to the server, where it is converted to the appropriate format and encrypted.

[1461] 3. Terminal: Sends text data to the server using HTTP requests or web sockets, and the data is sent to the server in real time.

[1462] 4. Server: The received text data is passed to the analysis module, where data cleansing and format conversion are performed.

[1463] 5. Server: Using natural language processing (NLP) technology, context-specific keywords are extracted from the text data. For example, keywords such as "dinner," "place," and "tired" are extracted.

[1464] 6. Server: Analyzes the user's emotions from text data using an emotion engine. For example, recognizes that the user is tired from the expression "tired."

[1465] 7. Server: Generates a query to an external information service based on the extracted keywords and the recognized sentiment. This query is formatted as an API call. For example, a query such as "recommended dinner places relaxing" is generated.

[1466] 8. Server: Sends a query to the API of an external information service to get relevant information. Sends the above query to a search engine to find a relaxing place for dinner.

[1467] 9. Server: Receives the relevant information and formats it for delivery to the user. The information is formatted in a format such as JSON or XML.

[1468] 10. Server: Formats and sends relevant information back to the device. This communication is also encrypted and secure.

[1469] 11. Terminal: Analyzes the relevant information received from the server and prepares it for display on the user's communication application screen, including formatting and layout of the information.

[1470] 12. Terminal: The retrieved relevant information is seamlessly integrated into the chat screen of a communication application, allowing users to view the information without interrupting the conversation.

[1471] Specific use cases

[1472] Scene 1: Sentiment analysis when searching for a dinner spot

[1473] User: Messages: "Where do you think we should go for dinner tonight? I'm really tired."

[1474] Terminal: Sends a message to the server.

[1475] Server: Analyzes the message and recognizes the keywords "dinner" and "location" as well as the emotion "tired."

[1476] Server: Obtain information on "nearby restaurants where you can relax" based on the extracted keywords and sentiment.

[1477] Device: "Here are some recommended restaurants where you can relax," the communication application screen displays.

[1478] Scene 2: Emotional analysis when planning a day off

[1479] User: Sends a message saying, "Anywhere fun to go this weekend?"

[1480] Terminal: Sends a message to the server.

[1481] Server: Analyzes the message and recognizes the keywords "weekend" and "fun place" as well as the emotion "looking forward to it."

[1482] Server: Obtain information on "weekend activities" based on the extracted keywords and sentiment.

[1483] Device: "Here are some recommended activities for the weekend" appears on the communications application screen.

[1484] In this way, by combining the emotion engine, the system of the present invention can provide appropriate information that matches the user's emotions, further improving the user experience.

[1485] The processing flow will be explained below.

[1486] Step 1:

[1487] User: Type and send a message within a communication application, for example, "I'm tired after a busy day at work. Do you know anywhere good for dinner?"

[1488] Step 2:

[1489] Terminal: Recognizes the sent message as text data and prepares it for transmission to the server, converting it into the appropriate format and encrypting it.

[1490] Step 3:

[1491] Terminal: Sends text data to the server using HTTP requests or web sockets, and the data is sent to the server in real time.

[1492] Step 4:

[1493] Server: Passes the received text data to the analysis module, where data cleansing and format conversion are performed.

[1494] Step 5:

[1495] Server: Using natural language processing (NLP) technology, it extracts context-specific keywords from the text data. For example, keywords such as "dinner," "place," and "tired" are extracted.

[1496] Step 6:

[1497] Server: Analyzes the user's emotions from text data using an emotion engine. For example, recognizes that the user is tired from the expression "tired."

[1498] Step 7:

[1499] Server: Generates a query to an external information service based on the extracted keywords and the recognized sentiment. This query is formatted as an API call. For example, a query such as "recommended dinner places relaxing" is generated.

[1500] Step 8:

[1501] Server: Sends a query to an external information service's API to retrieve relevant information. Sends the above query to a search engine to find a relaxing place for dinner.

[1502] Step 9:

[1503] Server: Receives the relevant information and formats it to be provided to the user. Here, the information is formatted into a format such as JSON or XML.

[1504] Step 10:

[1505] Server: Formats and sends relevant information back to the device. This communication is also encrypted and secure.

[1506] Step 11:

[1507] Terminal: Analyzes the relevant information received from the server and prepares it for display on the user's communication application screen, including formatting and layout settings for the information.

[1508] Step 12:

[1509] On-device: The acquired relevant information is seamlessly integrated into the chat screen of a communication application, allowing users to view the information without interrupting the conversation.

[1510] Step 13:

[1511] User: Decides on the next action based on the relevant information presented, for example, replying "Let's try this restaurant" to keep the conversation moving.

[1512] Example 2

[1513] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."

[1514] Conventional communication applications have limited means for providing relevant information based on the user's conversation content, making it difficult to provide information flexibly in response to the user's emotions. Furthermore, users cannot obtain appropriate information using vague expressions without entering specific keywords. This limits the user experience and hinders the improvement of user satisfaction.

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

[1516] In this invention, the server includes means for receiving text data, means for extracting keywords, means for analyzing the extracted emotions based on the keywords, and means for acquiring related information from an external information service based on the emotions and keywords. This makes it possible to provide related information according to the user's emotions. Furthermore, even if the user enters ambiguous expressions, appropriate information can be provided, which is expected to improve the user experience.

[1517] "Text data" refers to character string information sent by a user via a communication application.

[1518] "Keyword extraction" refers to the process of identifying and extracting important words and phrases from received text data.

[1519] "Sentiment analysis" refers to the process of identifying a user's emotional state from the words and context contained in text data.

[1520] "External information services" refers to external data providers that provide the necessary information through APIs or web services.

[1521] "Related information acquisition" refers to the process of acquiring information based on user input and emotions from external information services.

[1522] "Displaying information" refers to the process of presenting the relevant information obtained in a form that can be visually confirmed by the user.

[1523] This invention is a system that analyzes user conversations in a communication application in real time and combines it with an emotion engine to provide relevant information based on the user's emotions. This system has the functions of receiving text data, extracting keywords, obtaining related information from external information services, and displaying that information. The emotion engine also recognizes the user's emotions and adjusts the related information provided based on those emotions.

[1524] Hardware and software used

[1525] This system is implemented using the following hardware and software.

[1526] 1. Communication applications: Applications that run on smartphones or PCs and allow users to exchange messages with each other. For example, we will use a common messaging application.

[1527] 2. Server: Used to analyze the received text data, recognize emotions, and retrieve relevant information. For example, a cloud-based server (e.g., AWS, Azure) is used.

[1528] 3. Natural Language Processing Engine (NLP Engine): Used to extract keywords from text data. For example, Google NLP API is used.

[1529] 4. Emotion engine: Used to analyze user emotions from text data. For example, IBM Watson Emotional Analysis is used.

[1530] 5. APIs of external information services: Used to retrieve relevant information based on keywords and sentiment. For example, Google Places API is used.

[1531] 6. Communication protocol: HTTP requests and web sockets are used to communicate data between the terminal and the server, and between the server and external information services. HTTPS or WSS is used to encrypt the communication.

[1532] Specific examples

[1533] The device receives the user's message in the communication application and sends it to the server. The server analyzes the received message and extracts keywords using an NLP engine. It then analyzes the user's emotions using an emotion engine. Based on the extracted keywords and analyzed emotions, the server sends a query to the API of an external information service to obtain related information. The obtained information is formatted and sent back to the device, where it is displayed on the chat screen of the communication application.

[1534] For example, if a user types and sends "Is there anywhere fun to go this weekend?" into a communication application, the device will send the message to the server. The server will analyze the keywords "weekend" and "fun place" and the emotion "looking forward to" and obtain information on "activities to enjoy this weekend." Finally, the device will display "Here are some recommended activities for this weekend."

[1535] As described above, the system of the present invention can provide relevant information based on the user's emotions in real time, thereby improving the user experience.

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

[1537] Explain the program's processing flow in detail

[1538] Step 1: Divide into processing steps

[1539] Step 1: User types and sends a message in a communications application

[1540] Step 2: The device recognizes the sent message as text data and prepares to send it to the server.

[1541] Step 3: The device sends the text data to the server

[1542] Step 4: The server passes the received text data to the analysis module

[1543] Step 5: The server uses a natural language processing (NLP) engine to extract keywords from the text data.

[1544] Step 6: The server uses the emotion engine to analyze the user's emotions from the text data.

[1545] Step 7: The server generates a query to an external information service based on the extracted keywords and the recognized sentiment.

[1546] Step 8: The server queries the API of the external information service to obtain relevant information.

[1547] Step 9: The server formats the relevant information into a format that can be presented to the user.

[1548] Step 10: The server sends the relevant formatted information back to the device

[1549] Step 11: The device analyzes the relevant information received from the server and prepares it for display on the screen of the communication application.

[1550] Step 12: Display the relevant information acquired by the device on the chat screen of the communication application

[1551] Step 2: Detailed explanation of each processing step

[1552] Step 1:

[1553] Action: A user types a message in a communications application and presses send.

[1554] Input: A message typed by the user (e.g., "I'm tired after a busy day at work. Do you know anywhere good for dinner?").

[1555] Output: The user's input message is sent to the communication application.

[1556] Step 2:

[1557] How it works: The device recognizes the message as text data and prepares it for sending to the server. The message is converted to JSON format and encrypted using an encryption algorithm.

[1558] Input: The text message sent by the user.

[1559] Output: Encrypted text data in JSON format.

[1560] Step 3:

[1561] How it works: The device sends encrypted text data to the server using an HTTP request or web socket.

[1562] Input: Encrypted text data in JSON format.

[1563] Output: The text data sent to the server.

[1564] Step 4:

[1565] How it works: The server unpacks the received text data, cleanses it, and passes it to the analysis module.

[1566] Input: JSON format text data received from the terminal.

[1567] Output: Cleansed and converted text data into a parsable format.

[1568] Step 5:

[1569] How it works: The server invokes a natural language processing (NLP) engine to extract keywords from the text data. For example, it calls an NLP engine option (e.g., Google NLP API) to get related keywords such as "dinner," "place," and "tired."

[1570] Input: Cleansed text data.

[1571] Output: Extracted keywords (e.g. "dinner", "place", "tired").

[1572] Step 6:

[1573] How it works: The server uses an emotion engine to analyze the user's emotions from the text data. Using emotion engine options (e.g. IBM Watson Emotional Analysis), it recognizes the user's emotion of "fatigue" from the expression "tired."

[1574] Input: Cleansed text data.

[1575] Output: Extracted emotion (e.g., "fatigue").

[1576] Step 7:

[1577] How it works: The server generates queries to external information services based on the extracted keywords and the recognized sentiment. For example, it generates queries containing keywords such as "dinner," "place," and "relaxing."

[1578] Input: Extracted keywords and sentiment.

[1579] Output: The generated query (e.g., "recommended dinner places to relax").

[1580] Step 8:

[1581] How it works: The server sends a query to the API of an external information service to obtain related information. By sending a query to an external information service option (e.g., Google Places API), it obtains information on related restaurants and other places.

[1582] Input: The generated query.

[1583] Output: Relevant information retrieved from external information services (e.g., relaxing dinner places).

[1584] Step 9:

[1585] How it works: The server formats the relevant information it has retrieved into a form that can be presented to the user, using standard formats such as JSON or XML.

[1586] Input: The relevant information obtained.

[1587] Output: Formatted relevant information.

[1588] Step 10:

[1589] How it works: The server encrypts the relevant formatted information and sends it to the device. The communication protocol is HTTPS or WSS.

[1590] Input: Formatted relevant information.

[1591] Output: Encrypted relevant information sent to the device.

[1592] Step 11:

[1593] Operation: The device decrypts the relevant encrypted information received from the server and prepares it for display on the communication application screen, including layout and formatting of the information.

[1594] Input: Encrypted relevant information sent by the server.

[1595] Output: Relevant information decoded and ready to display.

[1596] Step 12:

[1597] How it works: The device displays the relevant information on the chat screen of the communication application, allowing the user to check information about relaxing dinner spots without interrupting the conversation.

[1598] Input: Decoded, viewable relevant information.

[1599] Output: Relevant information displayed on the chat screen.

[1600] (Application example 2)

[1601] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."

[1602] In modern brick-and-mortar stores, providing personalized information tailored to customer needs is difficult. In particular, when customers request product or service recommendations based on specific emotions or circumstances, it is difficult to respond promptly and appropriately to their requests. Conventional systems can only provide general information without considering the customer's emotions, which can lead to a decrease in customer satisfaction. Therefore, a system that can provide relevant information based on emotions is needed.

[1603] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.

[1604] In this invention, the server includes means for receiving text data, means for extracting keywords from the received text data, means for acquiring related information from an external information service based on the extracted keywords, means for displaying the acquired related information, means for analyzing user emotions, and means for adjusting the content of the related information to be provided based on the emotion analysis results. This makes it possible to analyze user emotions and provide personalized information based on the results in real time.

[1605] "Text data" refers to textual information that a user inputs and sends within a communication application.

[1606] "Keywords" are important phrases or words extracted from text data and are used to obtain related information.

[1607] "External information services" refer to information services and databases on the Internet, and are systems that have the function of providing related information.

[1608] "Related information" is information that is useful to the user and is obtained based on the extracted keywords and the user's feelings.

[1609] The "means for displaying" is a system that has the function of visualizing the acquired related information to the user through a user interface.

[1610] "Means for analyzing emotions" refers to technology and devices for recognizing and analyzing emotions from a user's text data.

[1611] The "adjustment means" is a function for appropriately changing the content and format of the related information to be provided based on the analyzed emotion results.

[1612] To implement this invention, it is necessary to build a system that analyzes text data entered by a user in a communication application in real time and provides related information using an emotion engine. This system uses the following hardware and software to perform specific data processing and calculations.

[1613] First, a user types and sends a message using a communication application. The communication application runs on a device such as a smartphone, smart glasses, or head-mounted display. The typed message is recognized as text data and prepared for transmission to the server. The message is converted into the appropriate format and encrypted.

[1614] Next, the device sends the text data to the server. This communication is performed in real time using HTTP requests or web sockets, and the encrypted data is securely sent to the server. The server then passes the received text data to a module for analysis, where it is cleansed and formatted.

[1615] The server then uses natural language processing (NLP) techniques, such as the Hugging Face Transformers library, to extract keywords from the text data. It then uses an emotion engine (e.g., an emotion classification model) to analyze the user's emotions from the text data. For example, it recognizes that the user is tired from the expression "tired."

[1616] The server generates a query to an external information service based on the extracted keywords and the recognized sentiment. This query is formatted as an API call. For example, a query such as "recommended dinner places to relax" is generated. The server sends the query to the API of the external information service to obtain related information. The obtained information is formatted in a format such as JSON or XML.

[1617] Finally, the server sends the formatted information back to the device. This communication is also encrypted and secure. The device analyzes the information received from the server and displays it on the user's communication application screen. Specifically, the information can be formatted and the layout can be set, allowing it to be seamlessly integrated into the chat screen.

[1618] Specific examples

[1619] Scene 1: Sentiment analysis when searching for a dinner spot

[1620] User: Messages "Where do you think we should go for dinner tonight? I'm really tired."

[1621] Server: Analyzes the message and recognizes the keywords "dinner" and "location" as well as the emotion "tired."

[1622] Server: Obtain information on "nearby restaurants where you can relax" based on the extracted keywords and sentiment.

[1623] Device: "Here are some recommended restaurants where you can relax," information is displayed on the communication application screen.

[1624] Scene 2: Emotional analysis when planning a day off

[1625] User: Sends a message saying, "Anywhere fun to go this weekend?"

[1626] Server: Analyzes the message and recognizes the keywords "weekend" and "fun place" as well as the emotion "looking forward to it."

[1627] Server: Obtain information on "activities to enjoy on the weekend" based on the extracted keywords and emotions.

[1628] Device: "Here are some recommended activities for the weekend" is displayed on the communication application screen.

[1629] Prompt Sentence Examples

[1630] User input: "Today is a special day and I want a special gift."

[1631] Emotion recognition result: "Joy"

[1632] Keyword extraction results: "celebration gift"

[1633] Generated API query: "celebration gift joy"

[1634] In this way, specific devices can be used to provide relevant information based on user sentiment and keywords in real time.

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

[1636] Step 1:

[1637] A user uses a communication application to type and send a message.

[1638] Input: Message text data from the user (e.g., "Today is a special day, and I want a special gift.")

[1639] Output: Message text data is input to the terminal

[1640] Specific operation: A user uses a device such as a smartphone to enter a message into a communication application and presses the send button.

[1641] Step 2:

[1642] The terminal recognizes the received message as text data and prepares to send it to the server.

[1643] Input: Message text data

[1644] Output: Encrypted text data

[1645] Specific operation: The device recognizes the message as text data, encrypts it, converts it into an appropriate format (e.g., JSON format), and prepares it for transmission to the server.

[1646] Step 3:

[1647] The terminal transmits the text data to the server.

[1648] Input: Encrypted text data

[1649] Output: Text data sent to the server

[1650] Specific operation: The device sends encrypted text data to the server in real time using HTTP requests or web sockets.

[1651] Step 4:

[1652] The server passes the received text data to a module for analysis.

[1653] Input: Text data sent to the server

[1654] Output: Cleansed text data

[1655] Specific operation: The server passes the received data to the data cleansing module, which removes unnecessary data and converts the format.

[1656] Step 5:

[1657] The server uses natural language processing (NLP) techniques to extract keywords from the text data.

[1658] Input: Cleansed text data

[1659] Output: Extracted keywords (e.g., "celebration" and "present")

[1660] How it works: The server uses natural language processing techniques such as Hugging Face's Transformers library to extract important keywords from the text data.

[1661] Step 6:

[1662] The server uses an emotion engine to analyze the user's emotions.

[1663] Input: Cleansed text data

[1664] Output: Parsed emotion (e.g. "joy")

[1665] Specific operation: The server uses an emotion classification model to analyze the user's emotions from the text data, and as a result, emotions such as "joy" are recognized.

[1666] Step 7:

[1667] The server generates a query to an external information service based on the extracted keywords and the recognized sentiment.

[1668] Input: extracted keywords and analyzed sentiment

[1669] Output: Generated query (e.g. "celebration gift joy")

[1670] Specific operation: The server combines the extracted keywords and emotions to generate a query for calling the API of an external information service.

[1671] Step 8:

[1672] The server sends a query to the API of an external information service to obtain relevant information.

[1673] Input: Generated query

[1674] Output: Retrieved related information (e.g., recommended items for special gifts)

[1675] Specific operation: The server calls the API and formats the retrieved relevant information in a format such as JSON or XML.

[1676] Step 9:

[1677] The server sends the relevant formatted information back to the terminal.

[1678] Input: Related information obtained

[1679] Output: Relevant information sent to the terminal

[1680] Specific operation: The server formats the relevant information in an appropriate format, encrypts it, and then sends it to the terminal.

[1681] Step 10:

[1682] The terminal analyzes the relevant information received from the server and displays it on the screen of the user's communication application.

[1683] Input: Relevant information sent to the terminal

[1684] Output: Relevant information displayed on the screen of the communication application

[1685] How it works: The device analyzes the received related information, formats and layouts it, and seamlessly integrates it into the chat screen. The related information is then displayed in a way that corresponds to the message entered by the user.

[1686] Through these steps, appropriate information based on user sentiment and text data can be provided in real time.

[1687] The specific processing unit 290 transmits the result of the specific processing to the robot 414. In the robot 414, the control unit 46A causes the speaker 240 and the control target 443 to output the result of the specific processing. The microphone 238 acquires voice indicating a user input regarding the result of the specific processing. The control unit 46A transmits voice data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the voice data.

[1688] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.

[1689] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the robot 414.

[1690] The emotion identification model 59 as an emotion engine may determine the user's emotion according to a specific mapping. Specifically, the emotion identification model 59 may determine the user's emotion according to an emotion map (see FIG. 9), which is a specific mapping. Similarly, the emotion identification model 59 may determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.

[1691] FIG. 9 is a diagram illustrating an emotion map 400 on which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. Emotions closer to the center of the concentric circles are more primitive. Emotions representing states and actions arising from a state of mind are arranged on the outer edges of the concentric circles. The concept of emotion includes both affect and mental states. Emotions generally generated from reactions occurring in the brain are arranged on the left side of the concentric circles. Emotions generally induced by situational judgment are arranged on the right side of the concentric circles. Emotions generally generated from reactions occurring in the brain and induced by situational judgment are arranged on the upper and lower sides of the concentric circles. Furthermore, the emotion of "pleasure" is arranged on the upper side of the concentric circles, and the emotion of "discomfort" is arranged on the lower side. In this way, in the emotion map 400, multiple emotions are mapped based on the structure by which emotions are generated, and emotions that tend to occur simultaneously are mapped close to each other.

[1692] These emotions are distributed in the 3 o'clock direction on emotion map 400, and typically fluctuate between relief and anxiety. In the right half of emotion map 400, situational awareness dominates over internal sensations, resulting in a sense of calm.

[1693] The inside of emotion map 400 represents what is going on in the mind, and the outside of emotion map 400 represents behavior, so the further you go outside emotion map 400, the more visible the emotions become (the more they are expressed in behavior).

[1694] Human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. Emotions can also be created for robots, automobiles, and motorcycles, based on various balances, such as posture and remaining battery life. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. An emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on Voice Emotion Recognition and Emotional Brain Physiological Signal Analysis Systems, Tokushima University, Doctoral Dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map lists emotions belonging to the "reaction" domain, where sensation is dominant. The right half of the emotion map lists emotions belonging to the "situation" domain, where situational awareness is dominant.

[1695] The emotion map defines two emotions that promote learning. One is a negative emotion on the situation side, around the middle of "repentance" or "reflection." In other words, this occurs when the robot experiences negative emotions such as "I never want to feel this way again" or "I don't want to be scolded again." The other is a positive emotion on the response side, around "desire." In other words, this occurs when the robot experiences positive feelings such as "I want more" or "I want to know more."

[1696] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values ​​indicating each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple pieces of training data that are combinations of user input and emotion values ​​indicating each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions that are located close to each other have similar values, as in the emotion map 900 shown in FIG. 10. FIG. 10 shows an example in which multiple emotions, "relieved," "calm," and "reassuring," have similar emotion values.

[1697] The system according to the present disclosure has been described above mainly with respect to the functions of the data processing device 12, but the system according to the present disclosure is not necessarily implemented on a server. The system according to the present disclosure may be implemented as a general information processing system. The present disclosure may be implemented, for example, as a software program running on a personal computer or an application running on a smartphone, etc. The method according to the present disclosure may be provided to users in the form of SaaS (Software as a Service).

[1698] In the above embodiment, an example was given in which the specific processing is performed by one computer 22, but the technology of the present disclosure is not limited to this, and the specific processing may be distributed and performed by a plurality of computers including the computer 22. For example, the data generation model 58 may be provided in an external device of the data processing device 12, and data may be generated in the external device in accordance with input data.

[1699] In the above embodiment, an example in which the specific processing program 56 is stored in the storage 32 has been described, but the technology of the present disclosure is not limited to this. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-transitory storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-transitory storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes the specific processing in accordance with the specific processing program 56.

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

[1701] It is not necessary to store all of the specific processing program 56 in a storage device such as a server connected to the data processing device 12 via the network 54, or to store all of the specific processing program 56 in the storage 32; only a portion of the specific processing program 56 may be stored.

[1702] The hardware resource for executing a specific process can be any of the following processors: An example of a processor is a CPU, which is a general-purpose processor that functions as a hardware resource for executing a specific process by executing software, i.e., a program. Another example of a processor is a dedicated electrical circuit, such as an FPGA (Field-Programmable Gate Array), a PLD (Programmable Logic Device), or an ASIC (Application Specific Integrated Circuit), which is a processor with a circuit configuration designed specifically for executing a specific process. Each processor has built-in or connected memory, and each processor uses the memory to execute the specific process.

[1703] The hardware resource that executes the specific processing may be configured with one of these various processors, or may be configured with a combination of two or more processors of the same or different types (for example, a combination of multiple FPGAs, or a combination of a CPU and an FPGA). Also, the hardware resource that executes the specific processing may be a single processor.

[1704] As an example of a system configured with a single processor, first, one processor is configured by combining one or more CPUs and software, and this processor functions as a hardware resource that executes a specific process. Second, there is a system that uses a processor that realizes the functions of an entire system including multiple hardware resources that execute a specific process on a single IC chip, as typified by SoC (System-on-a-chip). In this way, a specific process is realized using one or more of the above-mentioned various processors as hardware resources.

[1705] Furthermore, the hardware structure of these various processors can be, more specifically, an electric circuit that combines circuit elements such as semiconductor devices. The specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps may be deleted, new steps may be added, or the processing order may be rearranged, without departing from the spirit of the invention.

[1706] The above-described description and illustrations are a detailed explanation of the parts related to the technology of the present disclosure and are merely an example of the technology of the present disclosure. For example, the above description of the configuration, functions, actions, and effects is an explanation of an example of the configuration, functions, actions, and effects of the parts related to the technology of the present disclosure. Therefore, it goes without saying that unnecessary parts may be deleted, new elements may be added, or replacements may be made to the above-described description and illustrations within the scope of the gist of the technology of the present disclosure. Furthermore, to avoid confusion and facilitate understanding of the parts related to the technology of the present disclosure, the above-described description and illustrations omit explanations of common technical knowledge that do not require particular explanation to enable the implementation of the technology of the present disclosure.

[1707] All publications, patent applications, and technical standards mentioned in this specification are herein incorporated by reference to the same extent as if each individual publication, patent application, or technical standard was specifically and individually indicated to be incorporated by reference.

[1708] The following is further disclosed regarding the above embodiment.

[1709] (Claim 1)

[1710] means for receiving text data;

[1711] means for extracting keywords from the received text data;

[1712] A means for acquiring related information from an external information service based on the extracted keywords;

[1713] a means for displaying the retrieved related information;

[1714] A system including:

[1715] (Claim 2)

[1716] 2. The system according to claim 1, wherein the received text data is conversation data of a communication application.

[1717] (Claim 3)

[1718] 2. The system according to claim 1, wherein the means for extracting keywords extracts keywords using natural language processing technology.

[1719] "Example 1"

[1720] (Claim 1)

[1721] means for receiving text data;

[1722] means for analyzing the received text data and extracting context-based keywords;

[1723] means for sending a query to an external information service based on the extracted keywords to obtain related information;

[1724] a means for displaying the retrieved related information;

[1725] A system including:

[1726] (Claim 2)

[1727] 2. The system according to claim 1, wherein the received text data is conversation data of a communication application.

[1728] (Claim 3)

[1729] 2. The system of claim 1, wherein the means for extracting keywords utilizes a generative AI model to extract keywords.

[1730] "Application Example 1"

[1731] (Claim 1)

[1732] means for receiving text data;

[1733] means for extracting keywords from the received text data;

[1734] A means for acquiring related information from an external information service based on the extracted keywords;

[1735] a means for displaying the retrieved related information;

[1736] A means for acquiring related content from an information distribution service based on the extracted keywords;

[1737] means for responding in real time to user input using a chat function integrated into the communications application;

[1738] A system including:

[1739] (Claim 2)

[1740] 2. The system according to claim 1, wherein the received text data is conversation data of a communication application.

[1741] (Claim 3)

[1742] 2. The system according to claim 1, wherein the means for extracting keywords extracts keywords using natural language processing technology.

[1743] "Example 2: Combining Emotion Engines"

[1744] (Claim 1)

[1745] means for receiving text data;

[1746] means for extracting keywords from the received text data;

[1747] means for analyzing the extracted sentiment based on the keywords;

[1748] A means for acquiring related information from an external information service based on the sentiment and keywords;

[1749] a means for displaying the retrieved related information;

[1750] A system including:

[1751] (Claim 2)

[1752] 2. The system according to claim 1, wherein the received text data is conversation data of a communication application.

[1753] (Claim 3)

[1754] 2. The system of claim 1, wherein the means for analyzing keywords and sentiment utilizes natural language processing technology and a sentiment analysis engine.

[1755] "Application example 2 when combining emotion engines"

[1756] (Claim 1)

[1757] means for receiving text data;

[1758] means for extracting keywords from the received text data;

[1759] A means for acquiring related information from an external information service based on the extracted keywords;

[1760] a means for displaying the retrieved related information;

[1761] A means of analyzing user emotions,

[1762] A means for adjusting the content of related information provided based on the result of the sentiment analysis;

[1763] A system including:

[1764] (Claim 2)

[1765] 2. The system according to claim 1, wherein the received text data is conversation data of a communication application.

[1766] (Claim 3)

[1767] 2. The system according to claim 1, wherein the means for extracting keywords extracts keywords using natural language processing technology. [Explanation of symbols]

[1768] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Device 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robot< / url:> < / url:> < / url:> < / url:>

Claims

1. means for receiving text data; means for extracting keywords from the received text data; A means for acquiring related information from an external information service based on the extracted keywords; a means for displaying the retrieved related information; A system including:

2. 2. The system according to claim 1, wherein the received text data is conversation data of a communication application.

3. 2. The system according to claim 1, wherein the means for extracting keywords extracts keywords using natural language processing technology.

Citation Information

Patent Citations

  • Persona chatbot control method and system

    JP2022180282A