system
The system efficiently analyzes and prioritizes emails, generating response proposals to streamline email responses, particularly for urgent messages, by automating the process of keyword extraction and template-based responses.
Patent Information
- Application Number
- JP2024141492
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-08-22
- Publication Date
- 2026-03-06
AI Technical Summary
Conventional email response systems require significant time and effort to analyze and respond to emails, particularly urgent ones, leading to delays and inefficiencies.
A system that retrieves new, unread emails, analyzes their subject and body to extract keywords, determines urgency, sets priorities, and automatically generates response proposals using templates, displaying them in a separate tab for quick user review and modification.
This system significantly reduces the effort required to respond to emails, enabling efficient and prompt handling of urgent communications.
Smart Images

Figure 2026038157000001_ABST
Abstract
Description
[Technical Field]
[0001] The technology of the present disclosure relates to a system. [Background technology]
[0002] Patent document 1 discloses a persona chatbot control method performed by at least one processor, the method including the steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to a description of the chatbot character, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Publication No. 2022-180282 Summary of the Invention [Problem to be solved by the invention]
[0004] Conventional email response systems require a lot of time and effort to receive and analyze emails and generate responses, which can lead to delays in responding to particularly urgent emails. This makes it difficult to achieve a prompt and appropriate email response while significantly reducing the user's workload. The present invention aims to solve these conventional problems by providing a system that efficiently analyzes emails, sets priorities according to urgency, and automatically generates appropriate response proposals. [Means for solving the problem]
[0005] The present invention provides a system that includes a means for retrieving new, unread emails from a mail server, a means for analyzing the subject and body of the retrieved emails to extract specific keywords, a means for determining the urgency of the emails based on the extracted keywords and setting priorities, a means for displaying prioritized emails in a separate tab, a means for selecting an appropriate answer template based on the extracted keywords and generating answer proposals, and a means for creating email candidates based on the generated answer proposals and displaying them to the user. This enables email processing and replies to be performed quickly and efficiently. Furthermore, the ability to determine whether an email is urgently due, including specific keywords such as "urgent" and "by today," and to generate answer proposals including "Answers" and "summit" allows for even more efficient email responses.
[0006] A "mail server" is a server system that manages the sending and receiving of e-mails via the Internet and stores e-mails in users' mailboxes.
[0007] "New, unread mail" is email that has just been received and that the user has not yet opened.
[0008] "Analysis" is the process of analyzing acquired data or documents and extracting specific elements or patterns.
[0009] The "subject" is the title that succinctly expresses the content of the email, and is the text located at the top of the email body.
[0010] The "body" is the part that contains the main content of the email, and is the text located below the subject line.
[0011] A "keyword" is a word or phrase that has a specific meaning or information and is used to trigger a specific condition or action.
[0012] "Urgency" is a measure that indicates the level of priority that requires a response or processing, and is a criterion for determining whether or not an immediate response is required.
[0013] "Priority" is a standard for determining the order in which tasks and emails are processed, and is set based on urgency.
[0014] A "reply template" is a document format prepared in advance to provide a standardized reply to a specific type of email.
[0015] A "draft response" is a specific response automatically generated based on a template, and is a draft email prepared for the user to review and send.
[0016] The "email candidate" is a generated email proposal that is displayed for the user to confirm and modify, and is the email body at the stage before final sending.
[0017] A "separate tab" is a separate section or window in a user interface that separates and displays related items. [Brief explanation of the drawings]
[0018] [Figure 1] 1 is a conceptual diagram showing an example of the configuration of a data processing system according to a first embodiment. [Figure 2] 1 is a conceptual diagram showing an example of main functions of a data processing device and a smart device according to a first embodiment. [Figure 3] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a second embodiment. [Figure 4] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and smart glasses according to a second embodiment. [Figure 5] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a third embodiment. [Figure 6]FIG. 11 is a conceptual diagram showing an example of main functions of a data processing device and a headset-type terminal according to a third embodiment. [Figure 7] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a fourth embodiment. [Figure 8] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and a robot according to a fourth embodiment. [Figure 9] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 10] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 11] FIG. 3 is a sequence diagram showing a processing flow of the data processing system according to the first embodiment. [Figure 12] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 1. [Figure 13] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system according to the second embodiment when an emotion engine is combined. [Figure 14] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 2 when an emotion engine is combined. DETAILED DESCRIPTION OF THE INVENTION
[0019] An example of an embodiment of a system according to the technology of the present disclosure will be described below with reference to the accompanying drawings.
[0020] First, the terms used in the following description will be explained.
[0021] In the following embodiments, a coded processor (hereinafter simply referred to as a "processor") may be a single arithmetic device or a combination of multiple arithmetic devices. Furthermore, a processor may be a single type of arithmetic device or a combination of multiple types of arithmetic devices. Examples of arithmetic devices include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), and an APU (Accelerated Processing Unit).
[0022] In the following embodiments, a coded RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a working memory by a processor.
[0023] In the following embodiments, the coded storage is one or more non-volatile storage devices that store various programs, various parameters, etc. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), and magnetic tapes.
[0024] In the following embodiments, a communication I / F (Interface) with a symbol is an interface including a communication processor, an antenna, etc. The communication I / F controls communication between multiple computers. Examples of communication standards applied to the communication I / F include wireless communication standards including 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), Bluetooth (registered trademark), etc.
[0025] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." In other words, "A and / or B" means that it may be only A, only B, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" is also applied when three or more things are expressed connected by "and / or."
[0026] [First embodiment]
[0027] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.
[0028] 1, a data processing system 10 includes a data processing device 12 and a smart device 14. An example of the data processing device 12 is a server.
[0029] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0030] The smart device 14 includes a computer 36, a reception device 38, an output device 40, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The reception device 38, the output device 40, and the camera 42 are also connected to the bus 52.
[0031] The reception device 38 includes a touch panel 38A, a microphone 38B, and the like, and receives user input. The touch panel 38A detects contact with an indicator (for example, a pen or a finger) to receive user input by the touch of the indicator. The microphone 38B detects the user's voice to receive user input by voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the data indicating the user input.
[0032] The output device 40 includes a display 40A and a speaker 40B, and presents data to the user 20 by outputting the data in a form of expression that the user 20 can perceive (for example, audio and / or text). The display 40A displays visible information such as text and images in accordance with instructions from the processor 46. The speaker 40B outputs audio in accordance with instructions from the processor 46. The camera 42 is a compact digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.
[0033] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54.
[0034] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0035] 2, in the data processing device 12, a specific process is performed by the processor 28. A specific processing program 56 is stored in the storage 32. The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific process is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0036] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0037] In the smart device 14, the processor 46 performs the reception output process. The storage 50 stores a reception output program 60. The reception output program 60 is used in conjunction with the specific processing program 56 by the data processing system 10. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0038] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0039] This invention is a system that retrieves new, unread emails from a mail server, analyzes them, and automatically generates appropriate responses. This allows users to significantly reduce the effort required to respond to emails and process emails more efficiently. This system is operated by the server, terminals, and users.
[0040] Overall system overview
[0041] Server: Receives, analyzes, prioritizes, selects response templates, and generates response proposals.
[0042] Terminal: Displays generated email candidates, displays high priority emails in a separate tab, and allows the user to confirm, edit, and send.
[0043] User: Check the generated email suggestions, make corrections, and send them.
[0044] Email capture and analysis
[0045] The server periodically retrieves new unread emails from the mail server, and this process ensures that the latest emails are included in the system.
[0046] Read the subject and body of the acquired email and extract specific keywords ("Urgent", "By today", "Answers", "Summit").
[0047] Displaying Priorities
[0048] The server determines the urgency of the email based on the extracted keywords and classifies the priority as "high," "medium," or "low."
[0049] Emails with a high urgency level are displayed in a separate tab on the device, allowing users to respond quickly.
[0050] Generate answer suggestions
[0051] The server selects an appropriate response template based on the extracted keywords. For example, if "urgent" is detected, it applies a template for emergency responses.
[0052] Generates a specific response proposal based on the selected template. Replaces the placeholders in the template with information from the email body to create the response proposal.
[0053] Generate email suggestions
[0054] The server creates a candidate email based on the generated response, including addressing the recipient, modifying the subject (e.g., adding "Re:"), and constructing the body of the email.
[0055] The terminal displays the created email candidate to the user, who can confirm and modify it.
[0056] Specific examples
[0057] 1. Get new emails
[0058] The server retrieves a new unread email from the mail server with the subject "Confirm CSO report (urgent)".
[0059] 2. Email Analysis
[0060] The server analyzes the email body and subject and extracts the keyword "urgent."
[0061] 3. Setting priorities
[0062] The server determines that the urgency of the email is "high" and sets the priority of this email to high.
[0063] 4. Display of priority
[0064] The terminal displays emails with a "high" priority in a separate tab to alert the user.
[0065] 5. Generating Answer Suggestions
[0066] The server selects an answer template containing "urgent" and generates the following suggested answer:
[0067] We will look into this matter and deal with it as soon as possible. Please let us know if you have any questions.
[0068] 6. Create email suggestions
[0069] The server uses the above answer ideas to create email candidates and displays them on the terminal.
[0070] 7. User Confirmation and Submission
[0071] The user checks the displayed email candidates, corrects them as necessary, and then clicks the send button to send the email.
[0072] In this way, the system of the present invention can improve the efficiency of email correspondence operations and appropriately process emails that require a quick response.
[0073] The processing flow will be explained below.
[0074] Step 1: Check your email
[0075] The server periodically accesses the mail server to check for new unread emails. If there are any new emails, it retrieves them.
[0076] Step 2: Importing emails
[0077] The server reads the subject and body of the received email, processes the email's character encoding appropriately, and treats it as text data.
[0078] Step 3: Keyword extraction
[0079] The server uses natural language processing libraries and regular expressions to detect specific keywords (such as "urgent," "by today," "Answers," and "summit") in the subject and body of the email, and records the detected keywords.
[0080] Step 4: Determine the level of urgency
[0081] The server determines the urgency of the email based on the extracted keywords. For example, if the email contains keywords such as "urgent" or "by today," the server determines the urgency as "high."
[0082] Step 5: Setting priorities
[0083] The server assigns a priority to each email based on its urgency, categorizing it as "high," "medium," or "low," and records the priority setting in a database.
[0084] Step 6: Viewing Priorities
[0085] The device will display emails set as "high" priority in a separate tab, allowing users to quickly check important emails.
[0086] Step 7: Select a template
[0087] The server selects an appropriate response template based on the extracted keywords, for example, if the keyword "urgent" is detected, it will select a template for emergency response.
[0088] Step 8: Generate answer suggestions
[0089] The server generates a specific response proposal based on the selected template, replacing placeholders in the template with information extracted from the email body to create the response proposal.
[0090] Step 9: Generate email suggestions
[0091] The server creates a candidate email based on the generated answer, constructing the recipient, subject (e.g., adding "Re:"), and body of the email.
[0092] Step 10: View email suggestions
[0093] The terminal displays the created email candidates to the user, allowing the user to check and modify them.
[0094] Step 11: Sending an email
[0095] The user checks the email suggestions, makes corrections as necessary, and then clicks the send button.
[0096] The server actually sends the confirmed email according to the user's operation.
[0097] The above are the specific processing steps from receiving emails to analyzing them, generating and sending answer proposals, allowing users to respond to emails efficiently.
[0098] Example 1
[0099] 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."
[0100] Conventional email management systems have the problem of requiring a great deal of time and effort to respond to the large volume of emails received by users. Urgent emails, in particular, require a prompt response, but appropriate processing is often delayed. Furthermore, analyzing the content of emails and generating appropriate responses based on that information is also time-consuming. There is a need to solve these problems and improve the efficiency of email response operations.
[0101] 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.
[0102] In this invention, the server includes means for acquiring new, unread emails from the email server, means for analyzing the subject and text of the acquired emails and extracting specific keywords, means for determining the urgency of the emails based on the extracted keywords and setting priorities, means for displaying prioritized emails in separate tabs, means for selecting an appropriate answer template based on the extracted keywords and generating answer proposals, means for creating email candidates based on the generated answer proposals and displaying them to the user, and means for the user to check the email candidates, correct them, and send them. This allows users to streamline their email response work and quickly respond to emails with high urgency.
[0103] A "mail server" is a server device that sends and receives e-mails and stores and manages them in a form that users can access.
[0104] "New email" refers to new, unread email that has arrived in a user's email account.
[0105] "Analysis" is the process of analyzing the information (subject and body) of the acquired email and extracting specific keywords.
[0106] "Keywords" are important words or phrases contained in the email body or subject line, and are used to determine the urgency and type of the email.
[0107] "Urgency" refers to the necessity or priority of responding to an email, and is expressed as a classification such as "high," "medium," or "low."
[0108] The "priority" indicates the order in which multiple emails should be processed based on their importance and urgency.
[0109] An "answer template" is a template for a document that is generated based on specific keywords and is used to efficiently create answer proposals.
[0110] A "proposed answer" is a candidate reply message generated based on the selected answer template, which the user can confirm and modify to become the final reply email.
[0111] The "email candidate" is a draft of a reply email created based on the generated answer plan, and includes a recipient, a subject, and a body.
[0112] "User" refers to any individual or entity using this system who reviews, modifies, and sends email.
[0113] "Sending" refers to the act of actually sending the email candidate that the user has confirmed and corrected to the recipient.
[0114] MODE FOR CARRYING OUT THE INVENTION
[0115] This invention is a system that retrieves new, unread emails from a mail server, analyzes them, and automatically generates appropriate responses. This allows users to significantly reduce the effort required to respond to emails and process emails more efficiently. This system is operated by the server, terminals, and users.
[0116] Hardware and software used
[0117] Server: Responsible for receiving, analyzing, and prioritizing emails, selecting answer templates, and generating answer proposals. It uses IMAP (e.g., Dovecot, Microsoft Exchange) as the protocol for receiving emails and SMTP (e.g., Postfix, Sendmail) as the protocol for sending emails.
[0118] Terminal: Displays generated email candidates, displays high-priority emails in a separate tab, and allows the user to confirm, edit, and send. Provides a GUI for the email application, providing an environment that is easy for users to operate.
[0119] User: The entity that checks the generated email candidates, corrects them, and then sends them.
[0120] Email capture and analysis
[0121] The server accesses the mail server at regular intervals to retrieve new unread emails. This process uses the IMAP protocol.
[0122] Specific keywords (e.g., "urgent," "by today," "Answers," "summit") are extracted from the subject and body of the emails obtained using a natural language processing library (e.g., NLTK, spaCy).
[0123] Displaying Priorities
[0124] The server determines the urgency of the email based on the extracted keywords and classifies the priority as "high," "medium," or "low." To determine the urgency, it references a database that maps keywords to priorities.
[0125] Emails with a high urgency level will be displayed in a separate tab on the device, allowing users to respond quickly.
[0126] Generate answer suggestions
[0127] The server selects an appropriate answer template from a database based on the identified keywords. The selected template is a pre-prepared document template.
[0128] The placeholders in the template are replaced with information from the email subject and body to generate specific suggested answers.
[0129] Generate email suggestions
[0130] The server creates a candidate email based on the generated answer, which includes a recipient, a subject (e.g., adding "Re:" to the subject), and a message body.
[0131] Displaying email suggestions and user confirmation
[0132] The terminal displays the composed email candidate to the user, and the email application editor screen allows the user to check and modify the content of the email.
[0133] The user checks the displayed email candidates, corrects them as necessary, and then prepares to send them.
[0134] Send email
[0135] After the user clicks the send button, the terminal sends the email via the server, using the SMTP protocol.
[0136] Specific examples
[0137] 1. Get new emails
[0138] The server retrieves a new unread email from the mail server with the subject "Confirm CSO report (urgent)".
[0139] 2. Email Analysis
[0140] The server analyzes the email body and subject and extracts the keyword "urgent."
[0141] 3. Setting priorities
[0142] The server determines that the urgency of the email is "high" and sets the priority of this email to high.
[0143] 4. Display of priority
[0144] The terminal displays emails with a "high" priority in a separate tab to alert the user.
[0145] 5. Generating Answer Suggestions
[0146] The server selects an answer template containing "urgent" and generates the following answer:
[0147] "We will look into this matter and respond as soon as possible. Please let us know if you have any questions."
[0148] 6. Create email suggestions
[0149] The server uses the above answer ideas to create email candidates and displays them on the terminal.
[0150] 7. User Confirmation and Submission
[0151] The user checks the displayed email candidates, corrects them as necessary, and then clicks the send button to send the email.
[0152] Example of a prompt to input to the fund "generative AI model":
[0153] "Please generate an urgent response plan for the following email: Subject: Confirmation of CSO report (urgent), Body: Please confirm the CSO report as soon as possible."
[0154] "Please provide a response template to be applied when a new email contains the keyword 'urgent'."
[0155] This system allows users to significantly improve the efficiency of their email response operations, enabling them to respond quickly to emails that are particularly urgent.
[0156] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0157] Step 1: Get email
[0158] The server connects to the mail server at regular intervals to retrieve new unread emails. It receives mail server authentication information and folder information as input and generates a list of new unread emails as output.
[0159] Data processing: Download unread emails from the "INBOX" folder using the IMAP protocol.
[0160] Specific operation: The server retrieves a new unread email with the subject "Confirm CSO report (urgent)."
[0161] Step 2: Analyzing the email
[0162] The server analyzes the subject and body of the retrieved email and extracts specific keywords. It receives the subject and body of the email as input and generates a list of extracted keywords as output.
[0163] Data Computation: Perform text analysis using natural language processing libraries (e.g., NLTK, spaCy) to extract specific keywords.
[0164] Specific operation: The server extracts keywords such as "urgent," "CSO report," and "confirmation" from the email body.
[0165] Step 3: Prioritize and display
[0166] The server determines the urgency of the email based on the extracted keywords and sets the priority. It receives the extracted keyword list as input and generates the priority determination result as output.
[0167] Data calculation: Refer to a database of keywords and priorities to determine the urgency and classify it as "high," "medium," or "low."
[0168] Specific operation: The server determines the urgency of the email as "high" based on the keyword "urgent" and sets the priority.
[0169] The terminal displays emails with a "high" priority in a separate tab. It receives the priority determination result as input and generates the email displayed in the separate tab as output.
[0170] Specific behavior: The device displays "urgent" emails in a red tab to alert the user.
[0171] Step 4: Generate answer suggestions
[0172] The server selects an appropriate answer template based on the extracted keywords and generates a proposed answer. It receives the extracted keywords and email body information as input and generates a proposed answer as output.
[0173] Data processing: Select a corresponding template from the database and create a suggested answer by replacing the placeholders with the email content.
[0174] Specific operation: The server selects a template that includes "urgent" and generates a suggested answer that reads, "We will look into this matter and respond as soon as possible. Please let us know if you have any questions."
[0175] Step 5: Generate email suggestions
[0176] The server creates email candidates based on the generated answer suggestions, taking the generated answer suggestions as input and generating email candidates as output.
[0177] Data processing: Based on the proposed answer, set the recipient, modify the subject (e.g., add "Re:"), and construct the body of the email.
[0178] Specific operation: The server creates an email candidate with the subject "Re: Confirmation of CSO report (urgent)" and the generated answer proposal.
[0179] Step 6: Display email candidates and confirm with the user
[0180] The terminal displays the generated email candidates to the user. It receives email candidates as input and generates the displayed email candidates as output.
[0181] Specific behavior: The user reviews email suggestions on the editor screen of the email application.
[0182] The user checks the displayed email candidates, corrects them as necessary, and prepares to send them.The system receives the displayed email candidates as input and generates the corrected email content as output.
[0183] Specific action: The user adjusts the wording and clicks the send button.
[0184] Step 7: Send email
[0185] The terminal sends the email through the server after the user clicks the send button, taking the modified email content as input and generating the sent email as output.
[0186] Data processing: Send email using the SMTP protocol.
[0187] Specific operation: The sent email is delivered to the address specified by the user.
[0188] The above is the specific processing flow of this system, showing the detailed operations from input to output at each step. This system will greatly improve the efficiency of users' email response work and enable them to respond quickly to even highly urgent emails.
[0189] (Application example 1)
[0190] 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."
[0191] In business environments such as logistics centers, there is a need to respond to a large number of emails and to process them quickly and efficiently, but traditional manual email processing takes time and effort and is prone to errors. The challenge is to solve this problem and improve efficiency and accuracy through automation.
[0192] 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.
[0193] In this invention, the server includes means for acquiring new, unread emails from the email server, means for analyzing the subject and body of the acquired email and extracting specific keywords, means for determining the urgency of the email based on the extracted keywords and setting a priority, means for displaying the prioritized emails in a separate tab, means for selecting an appropriate answer template based on the extracted keywords and generating answer proposals, means for automatically generating appropriate answer proposals using a generative AI model, and means for creating email candidates based on the generated answer proposals and displaying them to the user. This significantly reduces the effort required for users to respond to emails and enables them to process emails quickly and efficiently.
[0194] A "mail server" is a system that manages and stores emails received by users.
[0195] "Means for obtaining new unread emails" is a function for obtaining new emails that have not yet been read from the email server.
[0196] The "subject" refers to the title or subject of an email, and is the part that gives an overview of the content.
[0197] The "body" is the part that describes the main content of the email.
[0198] "Keyword extraction means" is a function for detecting and extracting specific words or phrases within an email.
[0199] The "means for determining the urgency and setting the priority" is a function for evaluating the importance of emails based on extracted keywords and determining the priority of responses.
[0200] "Means to display in a separate tab" is a function that uses different tabs on the screen to display high priority emails separately from other emails.
[0201] The "means for selecting an answer template and generating a draft answer" is a function for selecting an appropriate answer from pre-prepared answer templates and creating a draft answer based on that.
[0202] A "generative AI model" is an artificial intelligence system that uses machine learning technology to understand the content of an email and automatically generate an appropriate response.
[0203] The "means for creating email candidates and displaying them to the user" is a function for creating a draft of a reply email based on the generated answer proposal and presenting it to the user.
[0204] This invention is a system for automating and streamlining email correspondence operations at logistics centers and the like. This system involves processing by a mail server, a server, terminals, and users. Specific embodiments of the invention will be described below.
[0205] Hardware and Software Configuration
[0206] Hardware: Servers and smartphones
[0207] Software: Python and imaplib (for receiving emails), some_ai_library (AI model library)
[0208] Retrieving emails
[0209] The server periodically retrieves new, unread emails from the mail server. To do this, it uses imaplib to connect to the mail server based on the user's authentication information. This process pulls the latest emails into the system.
[0210] Email analysis
[0211] The server reads the subject and body of the received email and extracts specific keywords, such as "urgent" or "today," which indicate the level of urgency. The extracted keywords are used in the next processing step.
[0212] Setting Priorities
[0213] The server determines the urgency of the email based on the extracted keywords and sets a priority. If the keyword "urgent" is included, the urgency is determined to be "high." This allows the user to respond quickly.
[0214] Displaying Priorities
[0215] The device displays emails with a set priority in a separate tab to draw the user's attention, allowing them to respond quickly to important emails.
[0216] Generate answer suggestions
[0217] The server selects an appropriate answer template based on the extracted keywords. It then uses a generative AI model to automatically generate answer suggestions. For example, if the keyword "urgent" is included, the following answer suggestions are generated:
[0218] "We will look into this matter and respond as soon as possible. Please let us know if you have any questions."
[0219] Generate email suggestions
[0220] The server creates email suggestions based on the generated answer proposals and displays them on the terminal. The user can check them, modify them as necessary, and then send them.
[0221] Examples of prompt statements
[0222] As a specific user operation, when a manager of a logistics center checks new emails, the following prompt sentence can be considered:
[0223] Example prompt sentence:
[0224] 1. "Log in and check for new unread emails"
[0225] 2. "If the subject line contains 'urgent', generate an urgent response."
[0226] 3. "Show the proposed answer to the user, revise it as needed, and submit it."
[0227] This invention improves the efficiency of operations at distribution centers, significantly reduces the time and effort required for users to respond to e-mails, and enables e-mails to be processed quickly and accurately.
[0228] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0229] Step 1:
[0230] Retrieving emails
[0231] The server retrieves new unread emails from the mail server. Specifically, it uses imaplib to connect to the mail server using the user's authentication information. The input is the user's email account information (email address, password), and the output is a list of new unread emails. This list includes the subject and body of the email.
[0232] Step 2:
[0233] Email analysis
[0234] The server analyzes the subject and body of the retrieved emails to extract specific keywords. The input is a list of new, unread emails, and the output is a list of extracted keywords. Specifically, it performs text analysis to detect keywords such as "urgent" and "today."
[0235] Step 3:
[0236] Setting Priorities
[0237] The server determines the urgency of emails based on the extracted keywords and sets priorities. The input is a list of extracted keywords, and the output is the priority of each email. Specifically, emails containing the keyword "urgent" are determined to be "high" and their priority is set.
[0238] Step 4:
[0239] Displaying Priorities
[0240] The terminal displays emails with a set priority in a separate tab. The input is the priority of each email, and the output is the email interface displayed to the user. Specifically, emails with a high priority are displayed in a prominent tab to draw the user's attention.
[0241] Step 5:
[0242] Generate answer suggestions
[0243] The server selects an appropriate answer template based on the extracted keywords and automatically generates appropriate answer suggestions using a generative AI model. The input is the answer template corresponding to the extracted keywords, and the output is the answer suggestions. Specifically, the generative AI model is executed, and if "urgent" is included, an answer suggestion for urgent response is generated.
[0244] Step 6:
[0245] Generate email suggestions
[0246] The server creates a candidate email based on the generated answer plan and displays it on the terminal. The input is the generated answer plan, and the output is the candidate email displayed to the user. Specifically, the server sets the subject, body, and recipient based on the answer plan and creates a draft of the email.
[0247] Step 7:
[0248] User confirmation and submission
[0249] The user checks the email candidates displayed on the terminal, makes corrections as necessary, and then sends them. The input is the generated email candidates, and the output is the final email corrected by the user. In concrete terms, the user checks the displayed email candidates, makes corrections, and clicks the send button to send the final email.
[0250] Through the above steps, a system is constructed in which the server, terminals, and users work together to efficiently process and respond to unread emails.
[0251] Furthermore, an emotion engine that estimates the user's emotion may be combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion.
[0252] This invention is a system that retrieves new, unread emails from a mail server, analyzes them, and automatically generates appropriate responses. It also incorporates an emotion engine that recognizes the user's emotions, allowing it to adjust the priority of emails and the content of responses. This significantly reduces the effort required for users to respond to emails, and enables them to handle emails appropriately according to their emotions. This system is operated by the server, terminals, and users.
[0253] Overall system overview
[0254] Server: Receives emails, analyzes them, sets priorities, selects answer templates, generates answer suggestions, recognizes user emotions, and adjusts priorities and answers.
[0255] Terminal: Displays generated email candidates, displays high-priority emails in a separate tab, displays emotion recognition results, and allows the user to confirm, correct, and send.
[0256] User: Check the generated email suggestions, make corrections and enter sentiments, and send.
[0257] Email capture and analysis
[0258] The server periodically retrieves new unread emails from the mail server, and this process ensures that the latest emails are included in the system.
[0259] Read the subject and body of the acquired email and extract specific keywords ("Urgent", "By today", "Answers", "Summit").
[0260] Displaying Priorities
[0261] The server determines the urgency of the email based on the extracted keywords and classifies the priority as "high," "medium," or "low."
[0262] Emails with a high urgency level will be displayed in a separate tab on the device.
[0263] Emotion recognition and priority adjustment
[0264] The server analyzes user input (text, voice, facial expressions, etc.) in real time and recognizes emotions using an emotion engine.
[0265] Reprioritizing emails based on the perceived emotion: for example, if a user is feeling "stressed," emails related to that user will be prioritized higher.
[0266] Generate and refine answer proposals
[0267] The server selects an appropriate answer template based on the extracted keywords and the recognized user sentiment.
[0268] Based on the selected template, a specific answer proposal is generated. The placeholders in the template are replaced based on the information in the email body and the user's sentiment to create the answer proposal.
[0269] Generate email suggestions
[0270] The server creates a candidate email based on the generated response, including addressing, subject (e.g., adding "Re:"), and constructing the body of the email.
[0271] The device displays the created email suggestions to the user, along with the emotion recognition results, which the user can review and modify.
[0272] Specific examples
[0273] 1. Get new emails
[0274] The server retrieves a new unread email from the mail server with the subject "Confirm CSO report (urgent)".
[0275] 2. Email Analysis
[0276] The server analyzes the email body and subject and extracts the keyword "urgent."
[0277] 3. Setting priorities
[0278] The server determines that the urgency of the email is "high" and sets the priority of this email to high.
[0279] 4. Emotion recognition
[0280] The server recognizes the user's emotions from the input text, voice, or facial expressions. In this case, it recognizes that the user is feeling "stressed."
[0281] 5. Adjust priorities
[0282] The server further prioritizes related emails based on the perceived emotion "stress."
[0283] 6. Generating Answer Suggestions
[0284] The server selects an answer template that includes "urgent" and generates answer suggestions based on the user's sentiment:
[0285] We will investigate this matter as soon as possible and respond accordingly. If you have any questions, please let us know. We will add expressions to reduce user stress.
[0286] 7. Create email suggestions
[0287] The server uses the above answer ideas to create email candidates and displays them on the terminal.
[0288] 8. User Confirmation and Submission
[0289] The user checks the displayed email candidates, corrects them as necessary, and then clicks the send button to send the email.
[0290] In this way, the system of the present invention can respond to users' emails in an efficient and emotionally sensitive manner.
[0291] The processing flow will be explained below.
[0292] Step 1: Check your email
[0293] The server periodically accesses the mail server to check for new unread emails. If there are any new emails, it retrieves them.
[0294] Step 2: Importing emails
[0295] The server reads the subject and body of the received email, processes the email's character encoding appropriately, and treats it as text data.
[0296] Step 3: Keyword extraction
[0297] The server uses natural language processing libraries and regular expressions to detect specific keywords (such as "urgent," "by today," "Answers," and "summit") in the subject and body of the email, and records the detected keywords.
[0298] Step 4: Determine the level of urgency
[0299] The server determines the urgency of the email based on the extracted keywords. For example, if the email contains keywords such as "urgent" or "by today," the server determines the urgency as "high."
[0300] Step 5: Setting priorities
[0301] The server assigns a priority to each email based on its urgency, categorizing it as "high," "medium," or "low," and records the priority setting in a database.
[0302] Step 6: Viewing Priorities
[0303] The device will display emails set as "high" priority in a separate tab, allowing users to quickly check important emails.
[0304] Step 7: Emotion Recognition
[0305] The server collects user input (text, voice, facial expressions, etc.) in real time and uses an emotion engine to recognize emotions, for example by analyzing words and phrases in the text, the tone of voice, and facial features.
[0306] Step 8: Adjust priorities based on emotions
[0307] The server re-prioritizes emails based on the user's emotions as determined by the emotion engine. For example, if a user is recognized as feeling "stressed," emails related to that user will be prioritized higher.
[0308] Step 9: Select a template
[0309] The server selects an appropriate answer template based on the extracted keywords and the user's recognized emotions. For example, if the keyword "urgent" is detected and the user is feeling "stressed," the server applies the appropriate template.
[0310] Step 10: Generate answer suggestions
[0311] The server generates a specific answer proposal based on the selected template, replacing placeholders in the template based on the information in the email body and the user's sentiment to create the answer proposal.
[0312] Step 11: Generate email candidates
[0313] The server creates a candidate email based on the generated response, including addressing, subject (e.g., adding "Re:"), and constructing the body of the email.
[0314] Step 12: View email suggestions
[0315] The device displays the created email suggestions to the user, along with the emotion recognition results, which the user can review and modify.
[0316] Step 13: Sending an email
[0317] The user checks the email suggestions, makes corrections as necessary, and then clicks the send button.
[0318] The server actually sends the confirmed email according to the user's operation.
[0319] The above steps involve specific processing, from receiving and analyzing emails, to generating and sending reply suggestions, as well as recognizing and reflecting the user's emotions. This allows for efficient and emotionally sensitive responses to users' emails.
[0320] Example 2
[0321] 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."
[0322] Conventional email management systems lack the functionality to enable users to respond quickly and effectively to large volumes of email, and have particular issues with prioritizing urgent emails and automatically responding to them. Furthermore, they lack the ability to respond in a way that takes into account the user's emotions, and there is a need for a method to improve stressful work environments.
[0323] 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.
[0324] In this invention, the server includes means for acquiring new, unread emails from the email server, means for analyzing the subject and text of the acquired emails and extracting specific keywords, means for determining the urgency of the emails based on the extracted keywords and setting priorities, means for analyzing user input and recognizing emotions, means for adjusting the priorities of the emails based on the recognized emotions, means for selecting an appropriate answer template based on the extracted keywords and the recognized emotions and generating answer proposals, and means for creating email candidates based on the generated answer proposals and displaying them to the user. This allows users to respond to large volumes of emails quickly and effectively, and enables email processing that takes emotions into consideration.
[0325] A "mail server" is a server system for managing the sending and receiving of e-mail.
[0326] "New unread email" refers to newly received email that has not yet been opened by the user.
[0327] The "subject" is text information that is displayed as the title of the email.
[0328] The "body" is text information that describes the main content of the email.
[0329] "Analysis" refers to the process of automatically reading the contents of an email and extracting meaning and information.
[0330] "Keywords" are words or phrases that are considered to be particularly important in the content of an email.
[0331] "Urgency" is a measure of how quickly an email should be responded to.
[0332] "Priority" is a criterion for determining which of a large number of emails should be processed first.
[0333] A "separate tab" is a separate section displayed within the same application window.
[0334] "User" refers to the person who actually uses this system.
[0335] "Input" refers to the act of a user providing information such as text, voice, or facial expression to a system.
[0336] "Emotions" refer to the feelings and psychological state that users experience when using a system.
[0337] "Emotion recognition" means that the system analyzes and understands the user's feelings and psychological state.
[0338] A "reply template" is a pre-defined standard reply to an email.
[0339] A "proposed answer" is a suggested sentence generated as a specific reply to an email.
[0340] A "candidate email" is an email that is prepared for sending and is based on the generated answer plan.
[0341] "Display" refers to the system outputting the processing results to the user's screen.
[0342] This system retrieves new, unread emails from a mail server, analyzes their contents, and automatically generates appropriate responses. Furthermore, by combining it with an emotion engine that recognizes the user's emotions, it has the ability to adjust the priority of emails and the content of responses.
[0343] System configuration
[0344] This system consists of three elements: a server, a terminal, and a user.
[0345] server
[0346] The server consists of the following hardware and software:
[0347] Hardware: Server computer (e.g., x86 architecture processor, 16GB or more memory, SSD storage, etc.)
[0348] Software: IMAP protocol library for email retrieval, natural language processing (NLP) library (such as Python's NLTK or SpaCy), emotion recognition engine (such as Watson® Tone Analyzer or Microsoft Azure®'s Emotion API)
[0349] Terminal
[0350] A terminal is a device that is directly operated by a user (e.g., a PC, a smartphone, or a tablet) and includes the following software:
[0351] Hardware: Mouse, keyboard, display, microphone, camera, etc.
[0352] Software: Web browser, email client software, dedicated applications
[0353] User
[0354] A User is an individual who uses the system to review, modify, and send emails. A User provides the following input:
[0355] Input data: text input, voice input, facial expression data
[0356] System Functions and Operation
[0357] The main functions of this system and the specific processes involved will be explained below.
[0358] Get new emails
[0359] The server accesses the mail server at regular intervals to retrieve new, unread emails. This process uses the IMAP protocol. For example, it retrieves new emails with the subject "Confirmation of CSO report (urgent)."
[0360] Email analysis
[0361] The server analyzes the subject and body of the email. It uses a natural language processing library (Python's NLTK or SpaCy) to extract specific keywords. For example, the keyword "urgent" can be found in "Subject: Confirm CSO report (urgent)."
[0362] Keyword extraction and prioritization
[0363] The server determines the urgency of the email based on the extracted keywords and classifies the priority as "high," "medium," or "low." For example, an email containing the keyword "urgent" is set to "high."
[0364] emotion recognition
[0365] The server analyzes the user's input (text, voice, facial expressions, etc.) and uses an emotion recognition engine to recognize the user's emotions. For example, if the user is feeling "stressed," that emotion is recognized.
[0366] Priority Adjustment
[0367] The server reprioritizes emails based on the perceived emotion: for example, if a user is feeling "stressed," emails related to that user will be given a higher priority.
[0368] Generate answer suggestions
[0369] The server selects an appropriate answer template based on the extracted keywords and the recognized sentiment, and generates a specific answer suggestion, such as "We will look into this matter and respond as soon as possible. Please let us know if you have any questions."
[0370] Generate email suggestions
[0371] The server then creates email suggestions based on the generated answer proposals and displays them on the terminal. The user can then check them and make corrections as necessary.
[0372] User confirmation and submission
[0373] The user checks the email candidates displayed on the terminal, makes corrections as necessary, and then clicks the send button to send the email.
[0374] Specific examples
[0375] Specific examples are shown below.
[0376] 1. Get new emails
[0377] The server retrieves a new unread email from the mail server with the subject "Confirm CSO report (urgent)".
[0378] 2. Email Analysis
[0379] The server analyzes the email body and subject and extracts the keyword "urgent."
[0380] 3. Keyword extraction and prioritization
[0381] The server determines the urgency of the email as "high" based on the keyword "urgent."
[0382] 4. Emotion recognition
[0383] The server analyzes the user's input (text, voice, facial expressions, etc.) and recognizes that the user is feeling "stressed."
[0384] 5. Adjust priorities
[0385] The server will further prioritize related emails based on the emotion "stress."
[0386] 6. Generating Answer Suggestions
[0387] The server selects a response template containing "urgent" and generates a response proposal: for example, "We will check and respond to this matter as soon as possible. If you have any questions, please let us know. Don't worry, we will handle it."
[0388] 7. Generate email suggestions
[0389] The server uses the generated answer plan to create email candidates and displays them on the terminal.
[0390] 8. User Confirmation and Submission
[0391] The user checks the displayed email candidates, makes corrections as necessary, and then clicks the send button to send the email.
[0392] Prompt Sentence Examples
[0393] "Please extract the content of emails with the word 'urgent' in the subject line and generate a suggested response."
[0394] "If your users are stressed, prioritize relevant emails."
[0395] "Please explain the process from retrieving new unread emails to generating suggested answers."
[0396] As described above, the system of the present invention can improve the efficiency of users' email correspondence and process emails in a manner that takes emotions into consideration.
[0397] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0398] Step 1: Get new emails
[0399] The server accesses the mail server at regular intervals to obtain new unread mail.
[0400] The input is a list of unread emails from a mail server.
[0401] The output is the subject and content data for each unread email.
[0402] Specific behavior: Uses IMAP protocol to check and retrieve unread emails in the "INBOX" folder. For example, unread emails with the subject "Confirm CSO report (urgent)".
[0403] Step 2: Analyzing the email
[0404] The server analyzes the subject and body of the email and extracts specific keywords.
[0405] The input is the subject and body of each unread email obtained in step 1.
[0406] The output is a list of extracted keywords.
[0407] Specific behavior: Using a natural language processing (NLP) library, the email content is analyzed and keywords such as "urgent" and "by today" are extracted. For example, the keyword "urgent" is identified from the email title "Confirm CSO report (urgent)."
[0408] Step 3: Keyword extraction and prioritization
[0409] The server determines the urgency of the email based on the extracted keywords and classifies the priority as "high," "medium," or "low."
[0410] The input is the keyword list extracted in step 2.
[0411] The output is the priority of the email (high, medium, low).
[0412] Specific behavior: Refer to a pre-defined keyword list, and if "urgent" is included, classify it as "High." As a result, an email with the subject "Confirm CSO report (urgent)" will be set as "High."
[0413] Step 4: Emotion Recognition
[0414] The server analyzes the user's input (text, voice, facial expressions, etc.) and recognizes the user's emotions using an emotion recognition engine.
[0415] The input can be text, voice, or facial expression data from the user.
[0416] The output is the recognized user emotion label (e.g., stress, joy, surprise).
[0417] Specific operation: Text and voice data is analyzed in real time using Watson Tone Analyzer, Microsoft Azure's Emotion API, etc. For example, consider the case where a user is recognized as feeling "stressed."
[0418] Step 5: Adjust priorities
[0419] The server reprioritizes emails based on the perceived sentiment.
[0420] The inputs are the emotion labels recognized in step 4 and the priorities set in step 3.
[0421] The output is the adjusted priority of the email.
[0422] Specific behavior: If a user is feeling "stressed," emails related to that user will be given a higher priority. For example, emails set to "high" will be re-prioritized to "very high."
[0423] Step 6: Generate answer suggestions
[0424] The server selects an appropriate answer template based on the extracted keywords and the recognized emotions, and generates specific answer suggestions.
[0425] The inputs are the keywords extracted in step 2 and the emotion labels recognized in step 4.
[0426] The output is the generated answer proposal.
[0427] Specific behavior: Select the best answer from the answer templates and use the generative AI model to generate a specific sentence, such as "We will look into this matter and respond as soon as possible. Please let us know if you have any questions." To reduce user stress, we add phrases such as "Don't worry, we'll handle it."
[0428] Step 7: Generate email suggestions
[0429] The server constructs email candidates based on the generated answer proposals.
[0430] The input is the proposed answer generated in step 6.
[0431] The output is the created email candidate.
[0432] Specific operation: Constructs the email recipient, subject (adding "Re:"), and body. For example, generates an email candidate with the subject "Re: Confirmation of CSO report (urgent)".
[0433] The terminal displays these email candidates to the user and also presents the results of emotion recognition.
[0434] Step 8: User Confirmation and Submission
[0435] The user checks the email candidates displayed on the terminal and makes corrections as necessary.
[0436] The input is the email candidate generated in step 7.
[0437] The output is the final email as modified by the user.
[0438] Specific operation: The user edits the text as needed and clicks the send button to send the email. For example, the user fine-tunes the text and finally clicks the "Send" button to send the email.
[0439] (Application example 2)
[0440] 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."
[0441] Conventional email response systems have difficulty efficiently processing new, unread emails, and do not adequately prioritize emails based on their urgency or emotions. This often leads to excessive stress for users. The present invention aims to provide a system that efficiently determines the urgency of unread emails, uses emotion recognition to set appropriate priorities, and realizes efficient, emotion-sensitive email responses.
[0442] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for acquiring unread new emails from the email server, means for analyzing the subject and body of the acquired emails and extracting specific keywords, means for determining the urgency of the emails based on the extracted keywords and user emotion recognition and setting a priority level, means for displaying prioritized emails in a separate tab, means for selecting an appropriate answer template based on the extracted keywords and emotion recognition and generating answer proposals, and means for creating email candidates based on the generated answer proposals and displaying them to the user. This makes it possible to significantly improve the efficiency of email responses while reducing user stress.
[0443] A "mail server" is a server for sending and receiving emails via a network such as the Internet.
[0444] "New unread email" is the most recent email that arrived in the user's inbox that they have not yet read.
[0445] "Means of acquisition" refers to the function for extracting data from the mail server and importing it into the system.
[0446] The "subject" refers to the title of the email, and is text that briefly describes the content of the email.
[0447] The "body" is the part of the email where the main content is written, and is text that includes detailed information about the message.
[0448] "Means for analysis" refers to the function of investigating and evaluating the contents of the acquired emails and extracting useful information.
[0449] "Specific keywords" are important words or phrases that are extracted when determining the urgency and content of an email.
[0450] "Means for extraction" is a function for extracting necessary keywords from the analyzed information.
[0451] "Emotion recognition" is a technology that reads emotions from a user's text, voice, facial expressions, etc.
[0452] "Urgency" is a measure of the promptness and importance of the response required by the email.
[0453] The "means for setting priorities" is a function that determines the order in which emails should be processed based on urgency and emotional recognition.
[0454] "Means to display in a separate tab" is a function for visually displaying high priority emails separately from other emails.
[0455] A "reply template" is a pre-defined text template containing common reply content.
[0456] The "means for generating answer suggestions" is a function that automatically creates specific reply content based on the extracted keywords and the results of emotion recognition.
[0457] The "means for creating email candidates" is a function for creating sendable emails from the generated answer proposals.
[0458] "Means for displaying to the user" is a function that displays the generated email candidates on the user's screen, allowing them to check and modify them.
[0459] This invention is a system that retrieves new, unread emails from a mail server, analyzes them, and determines the urgency of each email based on extracted keywords and user emotion recognition, and sets priorities. This system aims to improve the efficiency of customer inquiries and reduce user stress, particularly in content distribution services.
[0460] Hardware and software used
[0461] Server: Retrieves emails from the email server, analyzes them, extracts keywords, determines urgency, recognizes emotions, selects answer templates, generates answer suggestions, and creates email candidates.
[0462] On the device: Generated email candidates are displayed, high-priority emails are displayed in a separate tab, emotion recognition results are displayed, and the user can confirm, correct, and send the email.
[0463] Emotion engine: Software that analyzes user input and recognizes emotions, specifically using emotion analysis tools like TextBlob.
[0464] System Configuration and Operation
[0465] The server periodically retrieves new, unread emails from the email server. It analyzes the subject and body of the retrieved emails and extracts specific keywords. Keywords include "urgent" and "by today."
[0466] The server determines the urgency of the email based on the extracted keywords and emotion recognition by the emotion engine, and sets the priority. For example, if the keyword contains "urgent," the server sets the urgency of the email high. Also, if the user is feeling stressed, the server further increases the priority of related emails.
[0467] Priority-set emails are displayed in a separate tab on the device, allowing users to immediately check emails with high urgency.
[0468] The server selects an appropriate answer template based on the extracted keywords and the result of emotion recognition, and generates a suggested answer. Based on the generated suggested answer, email candidates are created and displayed on the terminal.
[0469] The user can then check the displayed email suggestions, modify them as necessary, and send them. This process reduces stress for the user and enables efficient email correspondence.
[0470] Specific examples
[0471] For example, consider the case where the server retrieves a new unread email from the mail server with the subject "Feedback: Regarding service improvements," which contains the phrase "Please respond as soon as possible."
[0472] 1. The server analyzes this email and extracts the keyword "urgent."
[0473] 2. The emotion engine analyzes the email text and recognizes that the user is feeling stressed.
[0474] 3. The server determines that the email is urgent and sets a priority.
[0475] 4. High priority emails will be displayed in a separate tab on your device.
[0476] 5. The server selects an answer template that includes "urgent" and generates the following answer: "We apologize for the stress this may cause. We will respond as soon as possible."
[0477] 6. A suggested email will be created based on this answer and displayed on your device.
[0478] 7. The user confirms and corrects this and submits it.
[0479] Prompt Sentence Examples
[0480] Subject: Feedback: How can we improve our service?
[0481] Main text:
[0482] Thank you for your help. I noticed the following issues while using the service.
[0483] I would appreciate it if you could respond as soon as possible. I have included "urgent" in the subject line, so I would be grateful if you could deal with it as soon as possible.
[0484] Long loading times
[0485] The screen layout is messed up
[0486] This will reduce stress for users while significantly improving the efficiency of responding to inquiries.
[0487] The above description of the "Mode for Carrying Out the Invention" is specific and detailed, and can serve as a reference for others to accurately understand and practice the present invention.
[0488] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0489] Step 1:
[0490] Get new emails from the mail server
[0491] The server connects to the mail server and retrieves new, unread emails. To do this, it uses the IMAP protocol or similar to retrieve data from the mail server. Specifically, the server sends a query to the mail server, retrieves the list of unread emails, and stores the contents of those emails on the server.
[0492] Input: Mail server connection information, authentication information
[0493] Output: List of new unread emails and the contents of each email
[0494] Step 2:
[0495] Analyze email subjects and text to extract specific keywords
[0496] The server analyzes the subject and body of the email using a text analysis tool (e.g., a natural language processing library) to extract specific keywords, such as "urgent" and "by today."
[0497] Input: Subject and body of new unread email
[0498] Output: List of extracted keywords per email
[0499] Step 3:
[0500] Recognizing user emotions using an emotion engine
[0501] The server receives user input (e.g., text, voice, facial expression, etc.) and analyzes the emotion using emotion engines such as TextBlob. Specifically, the email body and the user's response are input into an emotion model to determine whether the emotion is positive or negative.
[0502] Input: User input data (text, voice, facial expressions, etc.)
[0503] Output: User sentiment analysis results (negativity, positivity, etc.)
[0504] Step 4:
[0505] Determine the urgency of emails and set priorities
[0506] The server determines the urgency of the email and sets a priority based on the keywords extracted in the previous step and the results of emotion recognition. Specifically, if the keyword "urgent" is used or if the user is feeling strong stress, the urgency is set high and the priority is classified as high.
[0507] Input: List of extracted keywords, sentiment analysis results
[0508] Output: Urgency and priority of the email
[0509] Step 5:
[0510] Display high priority emails in a separate tab
[0511] Based on the priority information received from the server, the terminal displays emails that have been set to a high priority in a separate tab so that the user can check them immediately.
[0512] Input: Urgency and priority of the email
[0513] Output: High priority emails displayed in a separate tab
[0514] Step 6:
[0515] Select the appropriate answer template and generate answer suggestions
[0516] The server selects an appropriate answer template based on the extracted keywords and the results of emotion recognition. A specific answer is generated based on the selected template. For example, if the message is "urgent," the server uses the template "We will respond as soon as possible" and adds expressions that take the user's emotions into consideration.
[0517] Input: Extracted keywords, sentiment analysis results
[0518] Output: Generated answer ideas
[0519] Step 7:
[0520] Create email suggestions and display them to the user
[0521] The server creates email suggestions based on the generated answer proposals and presents them to the user through a user interface. The user can check them and make corrections as necessary.
[0522] Input: Generated answer ideas
[0523] Output: Email suggestions displayed in the user interface
[0524] Step 8:
[0525] User confirmation and submission
[0526] The user checks the displayed email candidates, makes any necessary corrections, and then clicks the send button to send the email. The server then actually sends the email content that the user has confirmed.
[0527] Input: User-corrected email suggestions
[0528] Output: Email sent
[0529] 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.
[0530] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (registered trademark) (Internet search engine).<URL: https: / / openai.com / blog / chatgpt> ), Gemini (registered trademark) (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.
[0531] 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.
[0532] [Second embodiment]
[0533] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0534] 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.
[0535] 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).
[0536] 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.
[0537] 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.
[0538] 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).
[0539] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[0540] 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.
[0541] 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.
[0542] 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.
[0543] 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.
[0544] 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."
[0545] This invention is a system that retrieves new, unread emails from a mail server, analyzes them, and automatically generates appropriate responses. This allows users to significantly reduce the effort required to respond to emails and process emails more efficiently. This system is operated by the server, terminals, and users.
[0546] Overall system overview
[0547] Server: Receives, analyzes, prioritizes, selects response templates, and generates response proposals.
[0548] Terminal: Displays generated email candidates, displays high priority emails in a separate tab, and allows the user to confirm, edit, and send.
[0549] User: Check the generated email suggestions, make corrections, and send them.
[0550] Email capture and analysis
[0551] The server periodically retrieves new unread emails from the mail server, and this process ensures that the latest emails are included in the system.
[0552] Read the subject and body of the acquired email and extract specific keywords ("Urgent", "By today", "Answers", "Summit").
[0553] Displaying Priorities
[0554] The server determines the urgency of the email based on the extracted keywords and classifies the priority as "high," "medium," or "low."
[0555] Emails with a high urgency level are displayed in a separate tab on the device, allowing users to respond quickly.
[0556] Generate answer suggestions
[0557] The server selects an appropriate response template based on the extracted keywords. For example, if "urgent" is detected, it applies a template for emergency responses.
[0558] Generates a specific response proposal based on the selected template. Replaces the placeholders in the template with information from the email body to create the response proposal.
[0559] Generate email suggestions
[0560] The server creates a candidate email based on the generated response, including addressing the recipient, modifying the subject (e.g., adding "Re:"), and constructing the body of the email.
[0561] The terminal displays the created email candidate to the user, who can confirm and modify it.
[0562] Specific examples
[0563] 1. Get new emails
[0564] The server retrieves a new unread email from the mail server with the subject "Confirm CSO report (urgent)".
[0565] 2. Email Analysis
[0566] The server analyzes the email body and subject and extracts the keyword "urgent."
[0567] 3. Setting priorities
[0568] The server determines that the urgency of the email is "high" and sets the priority of this email to high.
[0569] 4. Display of priority
[0570] The terminal displays emails with a "high" priority in a separate tab to alert the user.
[0571] 5. Generating Answer Suggestions
[0572] The server selects an answer template containing "urgent" and generates the following suggested answer:
[0573] We will look into this matter and deal with it as soon as possible. Please let us know if you have any questions.
[0574] 6. Create email suggestions
[0575] The server uses the above answer ideas to create email candidates and displays them on the terminal.
[0576] 7. User Confirmation and Submission
[0577] The user checks the displayed email candidates, corrects them as necessary, and then clicks the send button to send the email.
[0578] In this way, the system of the present invention can improve the efficiency of email correspondence operations and appropriately process emails that require a quick response.
[0579] The processing flow will be explained below.
[0580] Step 1: Check your email
[0581] The server periodically accesses the mail server to check for new unread emails. If there are any new emails, it retrieves them.
[0582] Step 2: Importing emails
[0583] The server reads the subject and body of the received email, processes the email's character encoding appropriately, and treats it as text data.
[0584] Step 3: Keyword extraction
[0585] The server uses natural language processing libraries and regular expressions to detect specific keywords (such as "urgent," "by today," "Answers," and "summit") in the subject and body of the email, and records the detected keywords.
[0586] Step 4: Determine the level of urgency
[0587] The server determines the urgency of the email based on the extracted keywords. For example, if the email contains keywords such as "urgent" or "by today," the server determines the urgency as "high."
[0588] Step 5: Setting priorities
[0589] The server assigns a priority to each email based on its urgency, categorizing it as "high," "medium," or "low," and records the priority setting in a database.
[0590] Step 6: Viewing Priorities
[0591] The device will display emails set as "high" priority in a separate tab, allowing users to quickly check important emails.
[0592] Step 7: Select a template
[0593] The server selects an appropriate response template based on the extracted keywords, for example, if the keyword "urgent" is detected, it will select a template for emergency response.
[0594] Step 8: Generate answer suggestions
[0595] The server generates a specific response proposal based on the selected template, replacing placeholders in the template with information extracted from the email body to create the response proposal.
[0596] Step 9: Generate email suggestions
[0597] The server creates a candidate email based on the generated answer, constructing the recipient, subject (e.g., adding "Re:"), and body of the email.
[0598] Step 10: View email suggestions
[0599] The terminal displays the created email candidates to the user, allowing the user to check and modify them.
[0600] Step 11: Sending an email
[0601] The user checks the email suggestions, makes corrections as necessary, and then clicks the send button.
[0602] The server actually sends the confirmed email according to the user's operation.
[0603] The above are the specific processing steps from receiving emails to analyzing them, generating and sending answer proposals, allowing users to respond to emails efficiently.
[0604] Example 1
[0605] 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."
[0606] Conventional email management systems have the problem of requiring a great deal of time and effort to respond to the large volume of emails received by users. Urgent emails, in particular, require a prompt response, but appropriate processing is often delayed. Furthermore, analyzing the content of emails and generating appropriate responses based on that information is also time-consuming. There is a need to solve these problems and improve the efficiency of email response operations.
[0607] 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.
[0608] In this invention, the server includes means for acquiring new, unread emails from the email server, means for analyzing the subject and text of the acquired emails and extracting specific keywords, means for determining the urgency of the emails based on the extracted keywords and setting priorities, means for displaying prioritized emails in separate tabs, means for selecting an appropriate answer template based on the extracted keywords and generating answer proposals, means for creating email candidates based on the generated answer proposals and displaying them to the user, and means for the user to check the email candidates, correct them, and send them. This allows users to streamline their email response work and quickly respond to emails with high urgency.
[0609] A "mail server" is a server device that sends and receives e-mails and stores and manages them in a form that users can access.
[0610] "New email" refers to new, unread email that has arrived in a user's email account.
[0611] "Analysis" is the process of analyzing the information (subject and body) of the acquired email and extracting specific keywords.
[0612] "Keywords" are important words or phrases contained in the email body or subject line, and are used to determine the urgency and type of the email.
[0613] "Urgency" refers to the necessity or priority of responding to an email, and is expressed as a classification such as "high," "medium," or "low."
[0614] The "priority" indicates the order in which multiple emails should be processed based on their importance and urgency.
[0615] An "answer template" is a template for a document that is generated based on specific keywords and is used to efficiently create answer proposals.
[0616] A "proposed answer" is a candidate reply message generated based on the selected answer template, which the user can confirm and modify to become the final reply email.
[0617] The "email candidate" is a draft of a reply email created based on the generated answer plan, and includes a recipient, a subject, and a body.
[0618] "User" refers to any individual or entity using this system who reviews, modifies, and sends email.
[0619] "Sending" refers to the act of actually sending the email candidate that the user has confirmed and corrected to the recipient.
[0620] MODE FOR CARRYING OUT THE INVENTION
[0621] This invention is a system that retrieves new, unread emails from a mail server, analyzes them, and automatically generates appropriate responses. This allows users to significantly reduce the effort required to respond to emails and process emails more efficiently. This system is operated by the server, terminals, and users.
[0622] Hardware and software used
[0623] Server: Responsible for receiving, analyzing, prioritizing emails, selecting answer templates, and generating answer proposals. It uses IMAP (e.g., Dovecot, Microsoft Exchange) as the protocol for receiving emails and SMTP (e.g., Postfix, Sendmail) as the protocol for sending emails.
[0624] Terminal: Displays generated email candidates, displays high-priority emails in a separate tab, and allows the user to confirm, edit, and send. Provides a GUI for the email application, providing an environment that is easy for users to operate.
[0625] User: The entity that checks the generated email candidates, corrects them, and then sends them.
[0626] Email capture and analysis
[0627] The server accesses the mail server at regular intervals to retrieve new unread emails. This process uses the IMAP protocol.
[0628] Specific keywords (e.g., "urgent," "by today," "Answers," "summit") are extracted from the subject and body of the emails obtained using a natural language processing library (e.g., NLTK, spaCy).
[0629] Displaying Priorities
[0630] The server determines the urgency of the email based on the extracted keywords and classifies the priority as "high," "medium," or "low." To determine the urgency, it references a database that maps keywords to priorities.
[0631] Emails with a high urgency level will be displayed in a separate tab on the device, allowing users to respond quickly.
[0632] Generate answer suggestions
[0633] The server selects an appropriate answer template from a database based on the identified keywords. The selected template is a pre-prepared document template.
[0634] The placeholders in the template are replaced with information from the email subject and body to generate specific suggested answers.
[0635] Generate email suggestions
[0636] The server creates a candidate email based on the generated answer, which includes a recipient, a subject (e.g., adding "Re:" to the subject), and a message body.
[0637] Displaying email suggestions and user confirmation
[0638] The terminal displays the composed email candidate to the user, and the email application editor screen allows the user to check and modify the content of the email.
[0639] The user checks the displayed email candidates, corrects them as necessary, and then prepares to send them.
[0640] Send email
[0641] After the user clicks the send button, the terminal sends the email via the server, using the SMTP protocol.
[0642] Specific examples
[0643] 1. Get new emails
[0644] The server retrieves a new unread email from the mail server with the subject "Confirm CSO report (urgent)".
[0645] 2. Email Analysis
[0646] The server analyzes the email body and subject and extracts the keyword "urgent."
[0647] 3. Setting priorities
[0648] The server determines that the urgency of the email is "high" and sets the priority of this email to high.
[0649] 4. Display of priority
[0650] The terminal displays emails with a "high" priority in a separate tab to alert the user.
[0651] 5. Generating Answer Suggestions
[0652] The server selects an answer template containing "urgent" and generates the following answer:
[0653] "We will look into this matter and respond as soon as possible. Please let us know if you have any questions."
[0654] 6. Create email suggestions
[0655] The server uses the above answer ideas to create email candidates and displays them on the terminal.
[0656] 7. User Confirmation and Submission
[0657] The user checks the displayed email candidates, corrects them as necessary, and then clicks the send button to send the email.
[0658] Example of a prompt to input to the fund "generative AI model":
[0659] "Please generate an urgent response plan for the following email: Subject: Confirmation of CSO report (urgent), Body: Please confirm the CSO report as soon as possible."
[0660] "Please provide a response template to be applied when a new email contains the keyword 'urgent'."
[0661] This system allows users to significantly improve the efficiency of their email response operations, enabling them to respond quickly to emails that are particularly urgent.
[0662] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0663] Step 1: Get email
[0664] The server connects to the mail server at regular intervals to retrieve new unread emails. It receives mail server authentication information and folder information as input and generates a list of new unread emails as output.
[0665] Data processing: Download unread emails from the "INBOX" folder using the IMAP protocol.
[0666] Specific operation: The server retrieves a new unread email with the subject "Confirm CSO report (urgent)."
[0667] Step 2: Analyzing the email
[0668] The server analyzes the subject and body of the retrieved email and extracts specific keywords. It receives the subject and body of the email as input and generates a list of extracted keywords as output.
[0669] Data Computation: Perform text analysis using natural language processing libraries (e.g., NLTK, spaCy) to extract specific keywords.
[0670] Specific operation: The server extracts keywords such as "urgent," "CSO report," and "confirmation" from the email body.
[0671] Step 3: Prioritize and display
[0672] The server determines the urgency of the email based on the extracted keywords and sets the priority. It receives the extracted keyword list as input and generates the priority determination result as output.
[0673] Data calculation: Refer to a database of keywords and priorities to determine the urgency and classify it as "high," "medium," or "low."
[0674] Specific operation: The server determines the urgency of the email as "high" based on the keyword "urgent" and sets the priority.
[0675] The terminal displays emails with a "high" priority in a separate tab. It receives the priority determination result as input and generates the email displayed in the separate tab as output.
[0676] Specific behavior: The device displays "urgent" emails in a red tab to alert the user.
[0677] Step 4: Generate answer suggestions
[0678] The server selects an appropriate answer template based on the extracted keywords and generates a proposed answer. It receives the extracted keywords and email body information as input and generates a proposed answer as output.
[0679] Data processing: Select a corresponding template from the database and create a suggested answer by replacing the placeholders with the email content.
[0680] Specific operation: The server selects a template that includes "urgent" and generates a suggested answer that reads, "We will look into this matter and respond as soon as possible. Please let us know if you have any questions."
[0681] Step 5: Generate email suggestions
[0682] The server creates email candidates based on the generated answer suggestions, taking the generated answer suggestions as input and generating email candidates as output.
[0683] Data processing: Based on the proposed answer, set the recipient, modify the subject (e.g., add "Re:"), and construct the body of the email.
[0684] Specific operation: The server creates an email candidate with the subject "Re: Confirmation of CSO report (urgent)" and the generated answer proposal.
[0685] Step 6: Display email candidates and confirm with the user
[0686] The terminal displays the generated email candidates to the user. It receives email candidates as input and generates the displayed email candidates as output.
[0687] Specific behavior: The user reviews email suggestions on the editor screen of the email application.
[0688] The user checks the displayed email candidates, corrects them as necessary, and prepares to send them.The system receives the displayed email candidates as input and generates the corrected email content as output.
[0689] Specific action: The user adjusts the wording and clicks the send button.
[0690] Step 7: Send email
[0691] The terminal sends the email through the server after the user clicks the send button, taking the modified email content as input and generating the sent email as output.
[0692] Data processing: Send email using the SMTP protocol.
[0693] Specific operation: The sent email is delivered to the address specified by the user.
[0694] The above is the specific processing flow of this system, showing the detailed operations from input to output at each step. This system will greatly improve the efficiency of users' email response work and enable them to respond quickly to even highly urgent emails.
[0695] (Application example 1)
[0696] 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."
[0697] In business environments such as logistics centers, there is a need to respond to a large number of emails and to process them quickly and efficiently, but traditional manual email processing takes time and effort and is prone to errors. The challenge is to solve this problem and improve efficiency and accuracy through automation.
[0698] 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.
[0699] In this invention, the server includes means for acquiring new, unread emails from the email server, means for analyzing the subject and body of the acquired email and extracting specific keywords, means for determining the urgency of the email based on the extracted keywords and setting a priority, means for displaying the prioritized emails in a separate tab, means for selecting an appropriate answer template based on the extracted keywords and generating answer proposals, means for automatically generating appropriate answer proposals using a generative AI model, and means for creating email candidates based on the generated answer proposals and displaying them to the user. This significantly reduces the effort required for users to respond to emails and enables them to process emails quickly and efficiently.
[0700] A "mail server" is a system that manages and stores emails received by users.
[0701] "Means for obtaining new unread emails" is a function for obtaining new emails that have not yet been read from the email server.
[0702] The "subject" refers to the title or subject of an email, and is the part that gives an overview of the content.
[0703] The "body" is the part that describes the main content of the email.
[0704] "Keyword extraction means" is a function for detecting and extracting specific words or phrases within an email.
[0705] The "means for determining the urgency and setting the priority" is a function for evaluating the importance of emails based on extracted keywords and determining the priority of responses.
[0706] "Means to display in a separate tab" is a function that uses different tabs on the screen to display high priority emails separately from other emails.
[0707] The "means for selecting an answer template and generating a draft answer" is a function for selecting an appropriate answer from pre-prepared answer templates and creating a draft answer based on that.
[0708] A "generative AI model" is an artificial intelligence system that uses machine learning technology to understand the content of an email and automatically generate an appropriate response.
[0709] The "means for creating email candidates and displaying them to the user" is a function for creating a draft of a reply email based on the generated answer proposal and presenting it to the user.
[0710] This invention is a system for automating and streamlining email correspondence operations at logistics centers and the like. This system involves processing by a mail server, a server, terminals, and users. Specific embodiments of the invention will be described below.
[0711] Hardware and Software Configuration
[0712] Hardware: Servers and smartphones
[0713] Software: Python and imaplib (for receiving emails), some_ai_library (AI model library)
[0714] Retrieving emails
[0715] The server periodically retrieves new, unread emails from the mail server. To do this, it uses imaplib to connect to the mail server based on the user's authentication information. This process pulls the latest emails into the system.
[0716] Email analysis
[0717] The server reads the subject and body of the received email and extracts specific keywords, such as "urgent" or "today," which indicate the level of urgency. The extracted keywords are used in the next processing step.
[0718] Setting Priorities
[0719] The server determines the urgency of the email based on the extracted keywords and sets a priority. If the keyword "urgent" is included, the urgency is determined to be "high." This allows the user to respond quickly.
[0720] Displaying Priorities
[0721] The device displays emails with a set priority in a separate tab to draw the user's attention, allowing them to respond quickly to important emails.
[0722] Generate answer suggestions
[0723] The server selects an appropriate answer template based on the extracted keywords. It then uses a generative AI model to automatically generate answer suggestions. For example, if the keyword "urgent" is included, the following answer suggestions are generated:
[0724] "We will look into this matter and respond as soon as possible. Please let us know if you have any questions."
[0725] Generate email suggestions
[0726] The server creates email suggestions based on the generated answer proposals and displays them on the terminal. The user can check them, modify them as necessary, and then send them.
[0727] Examples of prompt statements
[0728] As a specific user operation, when a manager of a logistics center checks new emails, the following prompt sentence can be considered:
[0729] Example prompt sentence:
[0730] 1. "Log in and check for new unread emails"
[0731] 2. "If the subject line contains 'urgent', generate an urgent response."
[0732] 3. "Show the proposed answer to the user, revise it as needed, and submit it."
[0733] This invention improves the efficiency of operations at distribution centers, significantly reduces the time and effort required for users to respond to e-mails, and enables e-mails to be processed quickly and accurately.
[0734] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0735] Step 1:
[0736] Retrieving emails
[0737] The server retrieves new unread emails from the mail server. Specifically, it uses imaplib to connect to the mail server using the user's authentication information. The input is the user's email account information (email address, password), and the output is a list of new unread emails. This list includes the subject and body of the email.
[0738] Step 2:
[0739] Email analysis
[0740] The server analyzes the subject and body of the retrieved emails to extract specific keywords. The input is a list of new, unread emails, and the output is a list of extracted keywords. Specifically, it performs text analysis to detect keywords such as "urgent" and "today."
[0741] Step 3:
[0742] Setting Priorities
[0743] The server determines the urgency of emails based on the extracted keywords and sets priorities. The input is a list of extracted keywords, and the output is the priority of each email. Specifically, emails containing the keyword "urgent" are determined to be "high" and their priority is set.
[0744] Step 4:
[0745] Displaying Priorities
[0746] The terminal displays emails with a set priority in a separate tab. The input is the priority of each email, and the output is the email interface displayed to the user. Specifically, emails with a high priority are displayed in a prominent tab to draw the user's attention.
[0747] Step 5:
[0748] Generate answer suggestions
[0749] The server selects an appropriate answer template based on the extracted keywords and automatically generates appropriate answer suggestions using a generative AI model. The input is the answer template corresponding to the extracted keywords, and the output is the answer suggestions. Specifically, the generative AI model is executed, and if "urgent" is included, an answer suggestion for urgent response is generated.
[0750] Step 6:
[0751] Generate email suggestions
[0752] The server creates a candidate email based on the generated answer plan and displays it on the terminal. The input is the generated answer plan, and the output is the candidate email displayed to the user. Specifically, the server sets the subject, body, and recipient based on the answer plan and creates a draft of the email.
[0753] Step 7:
[0754] User confirmation and submission
[0755] The user checks the email candidates displayed on the terminal, makes corrections as necessary, and then sends them. The input is the generated email candidates, and the output is the final email corrected by the user. In concrete terms, the user checks the displayed email candidates, makes corrections, and clicks the send button to send the final email.
[0756] Through the above steps, a system is constructed in which the server, terminals, and users work together to efficiently process and respond to unread emails.
[0757] 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.
[0758] This invention is a system that retrieves new, unread emails from a mail server, analyzes them, and automatically generates appropriate responses. It also incorporates an emotion engine that recognizes the user's emotions, allowing it to adjust the priority of emails and the content of responses. This significantly reduces the effort required for users to respond to emails, and enables them to handle emails appropriately according to their emotions. This system is operated by the server, terminals, and users.
[0759] Overall system overview
[0760] Server: Receives emails, analyzes them, sets priorities, selects answer templates, generates answer suggestions, recognizes user emotions, and adjusts priorities and answers.
[0761] Terminal: Displays generated email candidates, displays high-priority emails in a separate tab, displays emotion recognition results, and allows the user to confirm, correct, and send.
[0762] User: Check the generated email suggestions, make corrections and enter sentiments, and send.
[0763] Email capture and analysis
[0764] The server periodically retrieves new unread emails from the mail server, and this process ensures that the latest emails are included in the system.
[0765] Read the subject and body of the acquired email and extract specific keywords ("Urgent", "By today", "Answers", "Summit").
[0766] Displaying Priorities
[0767] The server determines the urgency of the email based on the extracted keywords and classifies the priority as "high," "medium," or "low."
[0768] Emails with a high urgency level will be displayed in a separate tab on the device.
[0769] Emotion recognition and priority adjustment
[0770] The server analyzes user input (text, voice, facial expressions, etc.) in real time and recognizes emotions using an emotion engine.
[0771] Reprioritizing emails based on the perceived emotion: for example, if a user is feeling "stressed," emails related to that user will be prioritized higher.
[0772] Generate and refine answer proposals
[0773] The server selects an appropriate answer template based on the extracted keywords and the recognized user sentiment.
[0774] Based on the selected template, a specific answer proposal is generated. The placeholders in the template are replaced based on the information in the email body and the user's sentiment to create the answer proposal.
[0775] Generate email suggestions
[0776] The server creates a candidate email based on the generated response, including addressing, subject (e.g., adding "Re:"), and constructing the body of the email.
[0777] The device displays the created email suggestions to the user, along with the emotion recognition results, which the user can review and modify.
[0778] Specific examples
[0779] 1. Get new emails
[0780] The server retrieves a new unread email from the mail server with the subject "Confirm CSO report (urgent)".
[0781] 2. Email Analysis
[0782] The server analyzes the email body and subject and extracts the keyword "urgent."
[0783] 3. Setting priorities
[0784] The server determines that the urgency of the email is "high" and sets the priority of this email to high.
[0785] 4. Emotion recognition
[0786] The server recognizes the user's emotions from the input text, voice, or facial expressions. In this case, it recognizes that the user is feeling "stressed."
[0787] 5. Adjust priorities
[0788] The server further prioritizes related emails based on the perceived emotion "stress."
[0789] 6. Generating Answer Suggestions
[0790] The server selects an answer template that includes "urgent" and generates answer suggestions based on the user's sentiment:
[0791] We will investigate this matter as soon as possible and respond accordingly. If you have any questions, please let us know. We will add expressions to reduce user stress.
[0792] 7. Create email suggestions
[0793] The server uses the above answer ideas to create email candidates and displays them on the terminal.
[0794] 8. User Confirmation and Submission
[0795] The user checks the displayed email candidates, corrects them as necessary, and then clicks the send button to send the email.
[0796] In this way, the system of the present invention can respond to users' emails in an efficient and emotionally sensitive manner.
[0797] The processing flow will be explained below.
[0798] Step 1: Check your email
[0799] The server periodically accesses the mail server to check for new unread emails. If there are any new emails, it retrieves them.
[0800] Step 2: Importing emails
[0801] The server reads the subject and body of the received email, processes the email's character encoding appropriately, and treats it as text data.
[0802] Step 3: Keyword extraction
[0803] The server uses natural language processing libraries and regular expressions to detect specific keywords (such as "urgent," "by today," "Answers," and "summit") in the subject and body of the email, and records the detected keywords.
[0804] Step 4: Determine the level of urgency
[0805] The server determines the urgency of the email based on the extracted keywords. For example, if the email contains keywords such as "urgent" or "by today," the server determines the urgency as "high."
[0806] Step 5: Setting priorities
[0807] The server assigns a priority to each email based on its urgency, categorizing it as "high," "medium," or "low," and records the priority setting in a database.
[0808] Step 6: Viewing Priorities
[0809] The device will display emails set as "high" priority in a separate tab, allowing users to quickly check important emails.
[0810] Step 7: Emotion Recognition
[0811] The server collects user input (text, voice, facial expressions, etc.) in real time and uses an emotion engine to recognize emotions, for example by analyzing words and phrases in the text, the tone of voice, and facial features.
[0812] Step 8: Adjust priorities based on emotions
[0813] The server re-prioritizes emails based on the user's emotions as determined by the emotion engine. For example, if a user is recognized as feeling "stressed," emails related to that user will be prioritized higher.
[0814] Step 9: Select a template
[0815] The server selects an appropriate answer template based on the extracted keywords and the user's recognized emotions. For example, if the keyword "urgent" is detected and the user is feeling "stressed," the server applies the appropriate template.
[0816] Step 10: Generate answer suggestions
[0817] The server generates a specific answer proposal based on the selected template, replacing placeholders in the template based on the information in the email body and the user's sentiment to create the answer proposal.
[0818] Step 11: Generate email candidates
[0819] The server creates a candidate email based on the generated response, including addressing, subject (e.g., adding "Re:"), and constructing the body of the email.
[0820] Step 12: View email suggestions
[0821] The device displays the created email suggestions to the user, along with the emotion recognition results, which the user can review and modify.
[0822] Step 13: Sending an email
[0823] The user checks the email suggestions, makes corrections as necessary, and then clicks the send button.
[0824] The server actually sends the confirmed email according to the user's operation.
[0825] The above steps involve specific processing, from receiving and analyzing emails, to generating and sending reply suggestions, as well as recognizing and reflecting the user's emotions. This allows for efficient and emotionally sensitive responses to users' emails.
[0826] Example 2
[0827] 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."
[0828] Conventional email management systems lack the functionality to enable users to respond quickly and effectively to large volumes of email, and have particular issues with prioritizing urgent emails and automatically responding to them. Furthermore, they lack the ability to respond in a way that takes into account the user's emotions, and there is a need for a method to improve stressful work environments.
[0829] 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.
[0830] In this invention, the server includes means for acquiring new, unread emails from the email server, means for analyzing the subject and text of the acquired emails and extracting specific keywords, means for determining the urgency of the emails based on the extracted keywords and setting priorities, means for analyzing user input and recognizing emotions, means for adjusting the priorities of the emails based on the recognized emotions, means for selecting an appropriate answer template based on the extracted keywords and the recognized emotions and generating answer proposals, and means for creating email candidates based on the generated answer proposals and displaying them to the user. This allows users to respond to large volumes of emails quickly and effectively, and enables email processing that takes emotions into consideration.
[0831] A "mail server" is a server system for managing the sending and receiving of e-mail.
[0832] "New unread email" refers to newly received email that has not yet been opened by the user.
[0833] The "subject" is text information that is displayed as the title of the email.
[0834] The "body" is text information that describes the main content of the email.
[0835] "Analysis" refers to the process of automatically reading the contents of an email and extracting meaning and information.
[0836] "Keywords" are words or phrases that are considered to be particularly important in the content of an email.
[0837] "Urgency" is a measure of how quickly an email should be responded to.
[0838] "Priority" is a criterion for determining which of a large number of emails should be processed first.
[0839] A "separate tab" is a separate section displayed within the same application window.
[0840] "User" refers to the person who actually uses this system.
[0841] "Input" refers to the act of a user providing information such as text, voice, or facial expression to a system.
[0842] "Emotions" refer to the feelings and psychological state that users experience when using a system.
[0843] "Emotion recognition" means that the system analyzes and understands the user's feelings and psychological state.
[0844] A "reply template" is a pre-defined standard reply to an email.
[0845] A "proposed answer" is a suggested sentence generated as a specific reply to an email.
[0846] A "candidate email" is an email that is prepared for sending and is based on the generated answer plan.
[0847] "Display" refers to the system outputting the processing results to the user's screen.
[0848] This system retrieves new, unread emails from a mail server, analyzes their contents, and automatically generates appropriate responses. Furthermore, by combining it with an emotion engine that recognizes the user's emotions, it has the ability to adjust the priority of emails and the content of responses.
[0849] System configuration
[0850] This system consists of three elements: a server, a terminal, and a user.
[0851] server
[0852] The server consists of the following hardware and software:
[0853] Hardware: Server computer (e.g., x86 architecture processor, 16GB or more memory, SSD storage, etc.)
[0854] Software: IMAP protocol library for email retrieval, natural language processing (NLP) library (such as Python's NLTK or SpaCy), emotion recognition engine (such as Watson Tone Analyzer or Microsoft Azure's Emotion API)
[0855] Terminal
[0856] A terminal is a device that is directly operated by a user (e.g., a PC, a smartphone, or a tablet) and includes the following software:
[0857] Hardware: Mouse, keyboard, display, microphone, camera, etc.
[0858] Software: Web browser, email client software, dedicated applications
[0859] User
[0860] A User is an individual who uses the system to review, modify, and send emails. A User provides the following input:
[0861] Input data: text input, voice input, facial expression data
[0862] System Functions and Operation
[0863] The main functions of this system and the specific processes involved will be explained below.
[0864] Get new emails
[0865] The server accesses the mail server at regular intervals to retrieve new, unread emails. This process uses the IMAP protocol. For example, it retrieves new emails with the subject "Confirmation of CSO report (urgent)."
[0866] Email analysis
[0867] The server analyzes the subject and body of the email. It uses a natural language processing library (Python's NLTK or SpaCy) to extract specific keywords. For example, the keyword "urgent" can be found in "Subject: Confirm CSO report (urgent)."
[0868] Keyword extraction and prioritization
[0869] The server determines the urgency of the email based on the extracted keywords and classifies the priority as "high," "medium," or "low." For example, an email containing the keyword "urgent" is set to "high."
[0870] emotion recognition
[0871] The server analyzes the user's input (text, voice, facial expressions, etc.) and uses an emotion recognition engine to recognize the user's emotions. For example, if the user is feeling "stressed," that emotion is recognized.
[0872] Priority Adjustment
[0873] The server reprioritizes emails based on the perceived emotion: for example, if a user is feeling "stressed," emails related to that user will be given a higher priority.
[0874] Generate answer suggestions
[0875] The server selects an appropriate answer template based on the extracted keywords and the recognized sentiment, and generates a specific answer suggestion, such as "We will look into this matter and respond as soon as possible. Please let us know if you have any questions."
[0876] Generate email suggestions
[0877] The server then creates email suggestions based on the generated answer proposals and displays them on the terminal. The user can then check them and make corrections as necessary.
[0878] User confirmation and submission
[0879] The user checks the email candidates displayed on the terminal, makes corrections as necessary, and then clicks the send button to send the email.
[0880] Specific examples
[0881] Specific examples are shown below.
[0882] 1. Get new emails
[0883] The server retrieves a new unread email from the mail server with the subject "Confirm CSO report (urgent)".
[0884] 2. Email Analysis
[0885] The server analyzes the email body and subject and extracts the keyword "urgent."
[0886] 3. Keyword extraction and prioritization
[0887] The server determines the urgency of the email as "high" based on the keyword "urgent."
[0888] 4. Emotion recognition
[0889] The server analyzes the user's input (text, voice, facial expressions, etc.) and recognizes that the user is feeling "stressed."
[0890] 5. Adjust priorities
[0891] The server will further prioritize related emails based on the emotion "stress."
[0892] 6. Generating Answer Suggestions
[0893] The server selects a response template containing "urgent" and generates a response proposal: for example, "We will check and respond to this matter as soon as possible. If you have any questions, please let us know. Don't worry, we will handle it."
[0894] 7. Generate email suggestions
[0895] The server uses the generated answer plan to create email candidates and displays them on the terminal.
[0896] 8. User Confirmation and Submission
[0897] The user checks the displayed email candidates, makes corrections as necessary, and then clicks the send button to send the email.
[0898] Prompt Sentence Examples
[0899] "Please extract the content of emails with the word 'urgent' in the subject line and generate a suggested response."
[0900] "If your users are stressed, prioritize relevant emails."
[0901] "Please explain the process from retrieving new unread emails to generating suggested answers."
[0902] As described above, the system of the present invention can improve the efficiency of users' email correspondence and process emails in a manner that takes emotions into consideration.
[0903] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0904] Step 1: Get new emails
[0905] The server accesses the mail server at regular intervals to obtain new unread mail.
[0906] The input is a list of unread emails from a mail server.
[0907] The output is the subject and content data for each unread email.
[0908] Specific behavior: Uses IMAP protocol to check and retrieve unread emails in the "INBOX" folder. For example, unread emails with the subject "Confirm CSO report (urgent)".
[0909] Step 2: Analyzing the email
[0910] The server analyzes the subject and body of the email and extracts specific keywords.
[0911] The input is the subject and body of each unread email obtained in step 1.
[0912] The output is a list of extracted keywords.
[0913] Specific behavior: Using a natural language processing (NLP) library, the email content is analyzed and keywords such as "urgent" and "by today" are extracted. For example, the keyword "urgent" is identified from the email title "Confirm CSO report (urgent)."
[0914] Step 3: Keyword extraction and prioritization
[0915] The server determines the urgency of the email based on the extracted keywords and classifies the priority as "high," "medium," or "low."
[0916] The input is the keyword list extracted in step 2.
[0917] The output is the priority of the email (high, medium, low).
[0918] Specific behavior: Refer to a pre-defined keyword list, and if "urgent" is included, classify it as "High." As a result, an email with the subject "Confirm CSO report (urgent)" will be set as "High."
[0919] Step 4: Emotion Recognition
[0920] The server analyzes the user's input (text, voice, facial expressions, etc.) and recognizes the user's emotions using an emotion recognition engine.
[0921] The input can be text, voice, or facial expression data from the user.
[0922] The output is the recognized user emotion label (e.g., stress, joy, surprise).
[0923] Specific operation: Text and voice data is analyzed in real time using Watson Tone Analyzer, Microsoft Azure's Emotion API, etc. For example, consider the case where a user is recognized as feeling "stressed."
[0924] Step 5: Adjust priorities
[0925] The server reprioritizes emails based on the perceived sentiment.
[0926] The inputs are the emotion labels recognized in step 4 and the priorities set in step 3.
[0927] The output is the adjusted priority of the email.
[0928] Specific behavior: If a user is feeling "stressed," emails related to that user will be given a higher priority. For example, emails set to "high" will be re-prioritized to "very high."
[0929] Step 6: Generate answer suggestions
[0930] The server selects an appropriate answer template based on the extracted keywords and the recognized emotions, and generates specific answer suggestions.
[0931] The inputs are the keywords extracted in step 2 and the emotion labels recognized in step 4.
[0932] The output is the generated answer proposal.
[0933] Specific behavior: Select the best answer from the answer templates and use the generative AI model to generate a specific sentence, such as "We will look into this matter and respond as soon as possible. Please let us know if you have any questions." To reduce user stress, we add phrases such as "Don't worry, we'll handle it."
[0934] Step 7: Generate email suggestions
[0935] The server constructs email candidates based on the generated answer proposals.
[0936] The input is the proposed answer generated in step 6.
[0937] The output is the created email candidate.
[0938] Specific operation: Constructs the email recipient, subject (adding "Re:"), and body. For example, generates an email candidate with the subject "Re: Confirmation of CSO report (urgent)".
[0939] The terminal displays these email candidates to the user and also presents the results of emotion recognition.
[0940] Step 8: User Confirmation and Submission
[0941] The user checks the email candidates displayed on the terminal and makes corrections as necessary.
[0942] The input is the email candidate generated in step 7.
[0943] The output is the final email as modified by the user.
[0944] Specific operation: The user edits the text as needed and clicks the send button to send the email. For example, the user fine-tunes the text and finally clicks the "Send" button to send the email.
[0945] (Application example 2)
[0946] 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."
[0947] Conventional email response systems have difficulty efficiently processing new, unread emails, and do not adequately prioritize emails based on their urgency or emotions. This often leads to excessive stress for users. The present invention aims to provide a system that efficiently determines the urgency of unread emails, uses emotion recognition to set appropriate priorities, and realizes efficient, emotion-sensitive email responses.
[0948] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for acquiring unread new emails from the email server, means for analyzing the subject and body of the acquired emails and extracting specific keywords, means for determining the urgency of the emails based on the extracted keywords and user emotion recognition and setting a priority level, means for displaying prioritized emails in a separate tab, means for selecting an appropriate answer template based on the extracted keywords and emotion recognition and generating answer proposals, and means for creating email candidates based on the generated answer proposals and displaying them to the user. This makes it possible to significantly improve the efficiency of email responses while reducing user stress.
[0949] A "mail server" is a server for sending and receiving emails via a network such as the Internet.
[0950] "New unread email" is the most recent email that arrived in the user's inbox that they have not yet read.
[0951] "Means of acquisition" refers to the function for extracting data from the mail server and importing it into the system.
[0952] The "subject" refers to the title of the email, and is text that briefly describes the content of the email.
[0953] The "body" is the part of the email where the main content is written, and is text that includes detailed information about the message.
[0954] "Means for analysis" refers to the function of investigating and evaluating the contents of the acquired emails and extracting useful information.
[0955] "Specific keywords" are important words or phrases that are extracted when determining the urgency and content of an email.
[0956] "Means for extraction" is a function for extracting necessary keywords from the analyzed information.
[0957] "Emotion recognition" is a technology that reads emotions from a user's text, voice, facial expressions, etc.
[0958] "Urgency" is a measure of the promptness and importance of the response required by the email.
[0959] The "means for setting priorities" is a function that determines the order in which emails should be processed based on urgency and emotional recognition.
[0960] "Means to display in a separate tab" is a function for visually displaying high priority emails separately from other emails.
[0961] A "reply template" is a pre-defined text template containing common reply content.
[0962] The "means for generating answer suggestions" is a function that automatically creates specific reply content based on the extracted keywords and the results of emotion recognition.
[0963] The "means for creating email candidates" is a function for creating sendable emails from the generated answer proposals.
[0964] "Means for displaying to the user" is a function that displays the generated email candidates on the user's screen, allowing them to check and modify them.
[0965] This invention is a system that retrieves new, unread emails from a mail server, analyzes them, and determines the urgency of each email based on extracted keywords and user emotion recognition, and sets priorities. This system aims to improve the efficiency of customer inquiries and reduce user stress, particularly in content distribution services.
[0966] Hardware and software used
[0967] Server: Retrieves emails from the email server, analyzes them, extracts keywords, determines urgency, recognizes emotions, selects answer templates, generates answer suggestions, and creates email candidates.
[0968] On the device: Generated email candidates are displayed, high-priority emails are displayed in a separate tab, emotion recognition results are displayed, and the user can confirm, correct, and send the email.
[0969] Emotion engine: Software that analyzes user input and recognizes emotions, specifically using emotion analysis tools like TextBlob.
[0970] System Configuration and Operation
[0971] The server periodically retrieves new, unread emails from the email server. It analyzes the subject and body of the retrieved emails and extracts specific keywords. Keywords include "urgent" and "by today."
[0972] The server determines the urgency of the email based on the extracted keywords and emotion recognition by the emotion engine, and sets the priority. For example, if the keyword contains "urgent," the server sets the urgency of the email high. Also, if the user is feeling stressed, the server further increases the priority of related emails.
[0973] Priority-set emails are displayed in a separate tab on the device, allowing users to immediately check emails with high urgency.
[0974] The server selects an appropriate answer template based on the extracted keywords and the result of emotion recognition, and generates a suggested answer. Based on the generated suggested answer, email candidates are created and displayed on the terminal.
[0975] The user can then check the displayed email suggestions, modify them as necessary, and send them. This process reduces stress for the user and enables efficient email correspondence.
[0976] Specific examples
[0977] For example, consider the case where the server retrieves a new unread email from the mail server with the subject "Feedback: Regarding service improvements," which contains the phrase "Please respond as soon as possible."
[0978] 1. The server analyzes this email and extracts the keyword "urgent."
[0979] 2. The emotion engine analyzes the email text and recognizes that the user is feeling stressed.
[0980] 3. The server determines that the email is urgent and sets a priority.
[0981] 4. High priority emails will be displayed in a separate tab on your device.
[0982] 5. The server selects an answer template that includes "urgent" and generates the following answer: "We apologize for the stress this may cause. We will respond as soon as possible."
[0983] 6. A suggested email will be created based on this answer and displayed on your device.
[0984] 7. The user confirms and corrects this and submits it.
[0985] Prompt Sentence Examples
[0986] Subject: Feedback: How can we improve our service?
[0987] Main text:
[0988] Thank you for your help. I noticed the following issues while using the service.
[0989] I would appreciate it if you could respond as soon as possible. I have included "urgent" in the subject line, so I would be grateful if you could deal with it as soon as possible.
[0990] Long loading times
[0991] The screen layout is messed up
[0992] This will reduce stress for users while significantly improving the efficiency of responding to inquiries.
[0993] The above description of the "Mode for Carrying Out the Invention" is specific and detailed, and can serve as a reference for others to accurately understand and practice the present invention.
[0994] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0995] Step 1:
[0996] Get new emails from the mail server
[0997] The server connects to the mail server and retrieves new, unread emails. To do this, it uses the IMAP protocol or similar to retrieve data from the mail server. Specifically, the server sends a query to the mail server, retrieves the list of unread emails, and stores the contents of those emails on the server.
[0998] Input: Mail server connection information, authentication information
[0999] Output: List of new unread emails and the contents of each email
[1000] Step 2:
[1001] Analyze email subjects and text to extract specific keywords
[1002] The server analyzes the subject and body of the email using a text analysis tool (e.g., a natural language processing library) to extract specific keywords, such as "urgent" and "by today."
[1003] Input: Subject and body of new unread email
[1004] Output: List of extracted keywords per email
[1005] Step 3:
[1006] Recognizing user emotions using an emotion engine
[1007] The server receives user input (e.g., text, voice, facial expression, etc.) and analyzes the emotion using emotion engines such as TextBlob. Specifically, the email body and the user's response are input into an emotion model to determine whether the emotion is positive or negative.
[1008] Input: User input data (text, voice, facial expressions, etc.)
[1009] Output: User sentiment analysis results (negativity, positivity, etc.)
[1010] Step 4:
[1011] Determine the urgency of emails and set priorities
[1012] The server determines the urgency of the email and sets a priority based on the keywords extracted in the previous step and the results of emotion recognition. Specifically, if the keyword "urgent" is used or if the user is feeling strong stress, the urgency is set high and the priority is classified as high.
[1013] Input: List of extracted keywords, sentiment analysis results
[1014] Output: Urgency and priority of the email
[1015] Step 5:
[1016] Display high priority emails in a separate tab
[1017] Based on the priority information received from the server, the terminal displays emails that have been set to a high priority in a separate tab so that the user can check them immediately.
[1018] Input: Urgency and priority of the email
[1019] Output: High priority emails displayed in a separate tab
[1020] Step 6:
[1021] Select the appropriate answer template and generate answer suggestions
[1022] The server selects an appropriate answer template based on the extracted keywords and the results of emotion recognition. A specific answer is generated based on the selected template. For example, if the message is "urgent," the server uses the template "We will respond as soon as possible" and adds expressions that take the user's emotions into consideration.
[1023] Input: Extracted keywords, sentiment analysis results
[1024] Output: Generated answer ideas
[1025] Step 7:
[1026] Create email suggestions and display them to the user
[1027] The server creates email suggestions based on the generated answer proposals and presents them to the user through a user interface. The user can check them and make corrections as necessary.
[1028] Input: Generated answer ideas
[1029] Output: Email suggestions displayed in the user interface
[1030] Step 8:
[1031] User confirmation and submission
[1032] The user checks the displayed email candidates, makes any necessary corrections, and then clicks the send button to send the email. The server then actually sends the email content that the user has confirmed.
[1033] Input: User-corrected email suggestions
[1034] Output: Email sent
[1035] 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.
[1036] 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.
[1037] 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.
[1038] [Third embodiment]
[1039] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[1040] 5, the data processing system 310 includes the data processing device 12 and a headset type terminal 314. An example of the data processing device 12 is a server.
[1041] 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).
[1042] 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.
[1043] 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.
[1044] 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).
[1045] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[1046] 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.
[1047] 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.
[1048] 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.
[1049] 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.
[1050] 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."
[1051] This invention is a system that retrieves new, unread emails from a mail server, analyzes them, and automatically generates appropriate responses. This allows users to significantly reduce the effort required to respond to emails and process emails more efficiently. This system is operated by the server, terminals, and users.
[1052] Overall system overview
[1053] Server: Receives, analyzes, prioritizes, selects response templates, and generates response proposals.
[1054] Terminal: Displays generated email candidates, displays high priority emails in a separate tab, and allows the user to confirm, edit, and send.
[1055] User: Check the generated email suggestions, make corrections, and send them.
[1056] Email capture and analysis
[1057] The server periodically retrieves new unread emails from the mail server, and this process ensures that the latest emails are included in the system.
[1058] Read the subject and body of the acquired email and extract specific keywords ("Urgent", "By today", "Answers", "Summit").
[1059] Displaying Priorities
[1060] The server determines the urgency of the email based on the extracted keywords and classifies the priority as "high," "medium," or "low."
[1061] Emails with a high urgency level are displayed in a separate tab on the device, allowing users to respond quickly.
[1062] Generate answer suggestions
[1063] The server selects an appropriate response template based on the extracted keywords. For example, if "urgent" is detected, it applies a template for emergency responses.
[1064] Generates a specific response proposal based on the selected template. Replaces the placeholders in the template with information from the email body to create the response proposal.
[1065] Generate email suggestions
[1066] The server creates a candidate email based on the generated response, including addressing the recipient, modifying the subject (e.g., adding "Re:"), and constructing the body of the email.
[1067] The terminal displays the created email candidate to the user, who can confirm and modify it.
[1068] Specific examples
[1069] 1. Get new emails
[1070] The server retrieves a new unread email from the mail server with the subject "Confirm CSO report (urgent)".
[1071] 2. Email Analysis
[1072] The server analyzes the email body and subject and extracts the keyword "urgent."
[1073] 3. Setting priorities
[1074] The server determines that the urgency of the email is "high" and sets the priority of this email to high.
[1075] 4. Display of priority
[1076] The terminal displays emails with a "high" priority in a separate tab to alert the user.
[1077] 5. Generating Answer Suggestions
[1078] The server selects an answer template containing "urgent" and generates the following suggested answer:
[1079] We will look into this matter and deal with it as soon as possible. Please let us know if you have any questions.
[1080] 6. Create email suggestions
[1081] The server uses the above answer ideas to create email candidates and displays them on the terminal.
[1082] 7. User Confirmation and Submission
[1083] The user checks the displayed email candidates, corrects them as necessary, and then clicks the send button to send the email.
[1084] In this way, the system of the present invention can improve the efficiency of email correspondence operations and appropriately process emails that require a quick response.
[1085] The processing flow will be explained below.
[1086] Step 1: Check your email
[1087] The server periodically accesses the mail server to check for new unread emails. If there are any new emails, it retrieves them.
[1088] Step 2: Importing emails
[1089] The server reads the subject and body of the received email, processes the email's character encoding appropriately, and treats it as text data.
[1090] Step 3: Keyword extraction
[1091] The server uses natural language processing libraries and regular expressions to detect specific keywords (such as "urgent," "by today," "Answers," and "summit") in the subject and body of the email, and records the detected keywords.
[1092] Step 4: Determine the level of urgency
[1093] The server determines the urgency of the email based on the extracted keywords. For example, if the email contains keywords such as "urgent" or "by today," the server determines the urgency as "high."
[1094] Step 5: Setting priorities
[1095] The server assigns a priority to each email based on its urgency, categorizing it as "high," "medium," or "low," and records the priority setting in a database.
[1096] Step 6: Viewing Priorities
[1097] The device will display emails set as "high" priority in a separate tab, allowing users to quickly check important emails.
[1098] Step 7: Select a template
[1099] The server selects an appropriate response template based on the extracted keywords, for example, if the keyword "urgent" is detected, it will select a template for emergency response.
[1100] Step 8: Generate answer suggestions
[1101] The server generates a specific response proposal based on the selected template, replacing placeholders in the template with information extracted from the email body to create the response proposal.
[1102] Step 9: Generate email suggestions
[1103] The server creates a candidate email based on the generated answer, constructing the recipient, subject (e.g., adding "Re:"), and body of the email.
[1104] Step 10: View email suggestions
[1105] The terminal displays the created email candidates to the user, allowing the user to check and modify them.
[1106] Step 11: Sending an email
[1107] The user checks the email suggestions, makes corrections as necessary, and then clicks the send button.
[1108] The server actually sends the confirmed email according to the user's operation.
[1109] The above are the specific processing steps from receiving emails to analyzing them, generating and sending answer proposals, allowing users to respond to emails efficiently.
[1110] Example 1
[1111] 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."
[1112] Conventional email management systems have the problem of requiring a great deal of time and effort to respond to the large volume of emails received by users. Urgent emails, in particular, require a prompt response, but appropriate processing is often delayed. Furthermore, analyzing the content of emails and generating appropriate responses based on that information is also time-consuming. There is a need to solve these problems and improve the efficiency of email response operations.
[1113] 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.
[1114] In this invention, the server includes means for acquiring new, unread emails from the email server, means for analyzing the subject and text of the acquired emails and extracting specific keywords, means for determining the urgency of the emails based on the extracted keywords and setting priorities, means for displaying prioritized emails in separate tabs, means for selecting an appropriate answer template based on the extracted keywords and generating answer proposals, means for creating email candidates based on the generated answer proposals and displaying them to the user, and means for the user to check the email candidates, correct them, and send them. This allows users to streamline their email response work and quickly respond to emails with high urgency.
[1115] A "mail server" is a server device that sends and receives e-mails and stores and manages them in a form that users can access.
[1116] "New email" refers to new, unread email that has arrived in a user's email account.
[1117] "Analysis" is the process of analyzing the information (subject and body) of the acquired email and extracting specific keywords.
[1118] "Keywords" are important words or phrases contained in the email body or subject line, and are used to determine the urgency and type of the email.
[1119] "Urgency" refers to the necessity or priority of responding to an email, and is expressed as a classification such as "high," "medium," or "low."
[1120] The "priority" indicates the order in which multiple emails should be processed based on their importance and urgency.
[1121] An "answer template" is a template for a document that is generated based on specific keywords and is used to efficiently create answer proposals.
[1122] A "proposed answer" is a candidate reply message generated based on the selected answer template, which the user can confirm and modify to become the final reply email.
[1123] The "email candidate" is a draft of a reply email created based on the generated answer plan, and includes a recipient, a subject, and a body.
[1124] "User" refers to any individual or entity using this system who reviews, modifies, and sends email.
[1125] "Sending" refers to the act of actually sending the email candidate that the user has confirmed and corrected to the recipient.
[1126] MODE FOR CARRYING OUT THE INVENTION
[1127] This invention is a system that retrieves new, unread emails from a mail server, analyzes them, and automatically generates appropriate responses. This allows users to significantly reduce the effort required to respond to emails and process emails more efficiently. This system is operated by the server, terminals, and users.
[1128] Hardware and software used
[1129] Server: Responsible for receiving, analyzing, prioritizing emails, selecting answer templates, and generating answer proposals. It uses IMAP (e.g., Dovecot, Microsoft Exchange) as the protocol for receiving emails and SMTP (e.g., Postfix, Sendmail) as the protocol for sending emails.
[1130] Terminal: Displays generated email candidates, displays high-priority emails in a separate tab, and allows the user to confirm, edit, and send. Provides a GUI for the email application, providing an environment that is easy for users to operate.
[1131] User: The entity that checks the generated email candidates, corrects them, and then sends them.
[1132] Email capture and analysis
[1133] The server accesses the mail server at regular intervals to retrieve new unread emails. This process uses the IMAP protocol.
[1134] Specific keywords (e.g., "urgent," "by today," "Answers," "summit") are extracted from the subject and body of the emails obtained using a natural language processing library (e.g., NLTK, spaCy).
[1135] Displaying Priorities
[1136] The server determines the urgency of the email based on the extracted keywords and classifies the priority as "high," "medium," or "low." To determine the urgency, it references a database that maps keywords to priorities.
[1137] Emails with a high urgency level will be displayed in a separate tab on the device, allowing users to respond quickly.
[1138] Generate answer suggestions
[1139] The server selects an appropriate answer template from a database based on the identified keywords. The selected template is a pre-prepared document template.
[1140] The placeholders in the template are replaced with information from the email subject and body to generate specific suggested answers.
[1141] Generate email suggestions
[1142] The server creates a candidate email based on the generated answer, which includes a recipient, a subject (e.g., adding "Re:" to the subject), and a message body.
[1143] Displaying email suggestions and user confirmation
[1144] The terminal displays the composed email candidate to the user, and the email application editor screen allows the user to check and modify the content of the email.
[1145] The user checks the displayed email candidates, corrects them as necessary, and then prepares to send them.
[1146] Send email
[1147] After the user clicks the send button, the terminal sends the email via the server, using the SMTP protocol.
[1148] Specific examples
[1149] 1. Get new emails
[1150] The server retrieves a new unread email from the mail server with the subject "Confirm CSO report (urgent)".
[1151] 2. Email Analysis
[1152] The server analyzes the email body and subject and extracts the keyword "urgent."
[1153] 3. Setting priorities
[1154] The server determines that the urgency of the email is "high" and sets the priority of this email to high.
[1155] 4. Display of priority
[1156] The terminal displays emails with a "high" priority in a separate tab to alert the user.
[1157] 5. Generating Answer Suggestions
[1158] The server selects an answer template containing "urgent" and generates the following answer:
[1159] "We will look into this matter and respond as soon as possible. Please let us know if you have any questions."
[1160] 6. Create email suggestions
[1161] The server uses the above answer ideas to create email candidates and displays them on the terminal.
[1162] 7. User Confirmation and Submission
[1163] The user checks the displayed email candidates, corrects them as necessary, and then clicks the send button to send the email.
[1164] Example of a prompt to input to the fund "generative AI model":
[1165] "Please generate an urgent response plan for the following email: Subject: Confirmation of CSO report (urgent), Body: Please confirm the CSO report as soon as possible."
[1166] "Please provide a response template to be applied when a new email contains the keyword 'urgent'."
[1167] This system allows users to significantly improve the efficiency of their email response operations, enabling them to respond quickly to emails that are particularly urgent.
[1168] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1169] Step 1: Get email
[1170] The server connects to the mail server at regular intervals to retrieve new unread emails. It receives mail server authentication information and folder information as input and generates a list of new unread emails as output.
[1171] Data processing: Download unread emails from the "INBOX" folder using the IMAP protocol.
[1172] Specific operation: The server retrieves a new unread email with the subject "Confirm CSO report (urgent)."
[1173] Step 2: Analyzing the email
[1174] The server analyzes the subject and body of the retrieved email and extracts specific keywords. It receives the subject and body of the email as input and generates a list of extracted keywords as output.
[1175] Data Computation: Perform text analysis using natural language processing libraries (e.g., NLTK, spaCy) to extract specific keywords.
[1176] Specific operation: The server extracts keywords such as "urgent," "CSO report," and "confirmation" from the email body.
[1177] Step 3: Prioritize and display
[1178] The server determines the urgency of the email based on the extracted keywords and sets the priority. It receives the extracted keyword list as input and generates the priority determination result as output.
[1179] Data calculation: Refer to a database of keywords and priorities to determine the urgency and classify it as "high," "medium," or "low."
[1180] Specific operation: The server determines the urgency of the email as "high" based on the keyword "urgent" and sets the priority.
[1181] The terminal displays emails with a "high" priority in a separate tab. It receives the priority determination result as input and generates the email displayed in the separate tab as output.
[1182] Specific behavior: The device displays "urgent" emails in a red tab to alert the user.
[1183] Step 4: Generate answer suggestions
[1184] The server selects an appropriate answer template based on the extracted keywords and generates a proposed answer. It receives the extracted keywords and email body information as input and generates a proposed answer as output.
[1185] Data processing: Select a corresponding template from the database and create a suggested answer by replacing the placeholders with the email content.
[1186] Specific operation: The server selects a template that includes "urgent" and generates a suggested answer that reads, "We will look into this matter and respond as soon as possible. Please let us know if you have any questions."
[1187] Step 5: Generate email suggestions
[1188] The server creates email candidates based on the generated answer suggestions, taking the generated answer suggestions as input and generating email candidates as output.
[1189] Data processing: Based on the proposed answer, set the recipient, modify the subject (e.g., add "Re:"), and construct the body of the email.
[1190] Specific operation: The server creates an email candidate with the subject "Re: Confirmation of CSO report (urgent)" and the generated answer proposal.
[1191] Step 6: Display email candidates and confirm with the user
[1192] The terminal displays the generated email candidates to the user. It receives email candidates as input and generates the displayed email candidates as output.
[1193] Specific behavior: The user reviews email suggestions on the editor screen of the email application.
[1194] The user checks the displayed email candidates, corrects them as necessary, and prepares to send them.The system receives the displayed email candidates as input and generates the corrected email content as output.
[1195] Specific action: The user adjusts the wording and clicks the send button.
[1196] Step 7: Send email
[1197] The terminal sends the email through the server after the user clicks the send button, taking the modified email content as input and generating the sent email as output.
[1198] Data processing: Send email using the SMTP protocol.
[1199] Specific operation: The sent email is delivered to the address specified by the user.
[1200] The above is the specific processing flow of this system, showing the detailed operations from input to output at each step. This system will greatly improve the efficiency of users' email response work and enable them to respond quickly to even highly urgent emails.
[1201] (Application example 1)
[1202] 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."
[1203] In business environments such as logistics centers, there is a need to respond to a large number of emails and to process them quickly and efficiently, but traditional manual email processing takes time and effort and is prone to errors. The challenge is to solve this problem and improve efficiency and accuracy through automation.
[1204] 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.
[1205] In this invention, the server includes means for acquiring new, unread emails from the email server, means for analyzing the subject and body of the acquired email and extracting specific keywords, means for determining the urgency of the email based on the extracted keywords and setting a priority, means for displaying the prioritized emails in a separate tab, means for selecting an appropriate answer template based on the extracted keywords and generating answer proposals, means for automatically generating appropriate answer proposals using a generative AI model, and means for creating email candidates based on the generated answer proposals and displaying them to the user. This significantly reduces the effort required for users to respond to emails and enables them to process emails quickly and efficiently.
[1206] A "mail server" is a system that manages and stores emails received by users.
[1207] "Means for obtaining new unread emails" is a function for obtaining new emails that have not yet been read from the email server.
[1208] The "subject" refers to the title or subject of an email, and is the part that gives an overview of the content.
[1209] The "body" is the part that describes the main content of the email.
[1210] "Keyword extraction means" is a function for detecting and extracting specific words or phrases within an email.
[1211] The "means for determining the urgency and setting the priority" is a function for evaluating the importance of emails based on extracted keywords and determining the priority of responses.
[1212] "Means to display in a separate tab" is a function that uses different tabs on the screen to display high priority emails separately from other emails.
[1213] The "means for selecting an answer template and generating a draft answer" is a function for selecting an appropriate answer from pre-prepared answer templates and creating a draft answer based on that.
[1214] A "generative AI model" is an artificial intelligence system that uses machine learning technology to understand the content of an email and automatically generate an appropriate response.
[1215] The "means for creating email candidates and displaying them to the user" is a function for creating a draft of a reply email based on the generated answer proposal and presenting it to the user.
[1216] This invention is a system for automating and streamlining email correspondence operations at logistics centers and the like. This system involves processing by a mail server, a server, terminals, and users. Specific embodiments of the invention will be described below.
[1217] Hardware and Software Configuration
[1218] Hardware: Servers and smartphones
[1219] Software: Python and imaplib (for receiving emails), some_ai_library (AI model library)
[1220] Retrieving emails
[1221] The server periodically retrieves new, unread emails from the mail server. To do this, it uses imaplib to connect to the mail server based on the user's authentication information. This process pulls the latest emails into the system.
[1222] Email analysis
[1223] The server reads the subject and body of the received email and extracts specific keywords, such as "urgent" or "today," which indicate the level of urgency. The extracted keywords are used in the next processing step.
[1224] Setting Priorities
[1225] The server determines the urgency of the email based on the extracted keywords and sets a priority. If the keyword "urgent" is included, the urgency is determined to be "high." This allows the user to respond quickly.
[1226] Displaying Priorities
[1227] The device displays emails with a set priority in a separate tab to draw the user's attention, allowing them to respond quickly to important emails.
[1228] Generate answer suggestions
[1229] The server selects an appropriate answer template based on the extracted keywords. It then uses a generative AI model to automatically generate answer suggestions. For example, if the keyword "urgent" is included, the following answer suggestions are generated:
[1230] "We will look into this matter and respond as soon as possible. Please let us know if you have any questions."
[1231] Generate email suggestions
[1232] The server creates email suggestions based on the generated answer proposals and displays them on the terminal. The user can check them, modify them as necessary, and then send them.
[1233] Examples of prompt statements
[1234] As a specific user operation, when a manager of a logistics center checks new emails, the following prompt sentence can be considered:
[1235] Example prompt sentence:
[1236] 1. "Log in and check for new unread emails"
[1237] 2. "If the subject line contains 'urgent', generate an urgent response."
[1238] 3. "Show the proposed answer to the user, revise it as needed, and submit it."
[1239] This invention improves the efficiency of operations at distribution centers, significantly reduces the time and effort required for users to respond to e-mails, and enables e-mails to be processed quickly and accurately.
[1240] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1241] Step 1:
[1242] Retrieving emails
[1243] The server retrieves new unread emails from the mail server. Specifically, it uses imaplib to connect to the mail server using the user's authentication information. The input is the user's email account information (email address, password), and the output is a list of new unread emails. This list includes the subject and body of the email.
[1244] Step 2:
[1245] Email analysis
[1246] The server analyzes the subject and body of the retrieved emails to extract specific keywords. The input is a list of new, unread emails, and the output is a list of extracted keywords. Specifically, it performs text analysis to detect keywords such as "urgent" and "today."
[1247] Step 3:
[1248] Setting Priorities
[1249] The server determines the urgency of emails based on the extracted keywords and sets priorities. The input is a list of extracted keywords, and the output is the priority of each email. Specifically, emails containing the keyword "urgent" are determined to be "high" and their priority is set.
[1250] Step 4:
[1251] Displaying Priorities
[1252] The terminal displays emails with a set priority in a separate tab. The input is the priority of each email, and the output is the email interface displayed to the user. Specifically, emails with a high priority are displayed in a prominent tab to draw the user's attention.
[1253] Step 5:
[1254] Generate answer suggestions
[1255] The server selects an appropriate answer template based on the extracted keywords and automatically generates appropriate answer suggestions using a generative AI model. The input is the answer template corresponding to the extracted keywords, and the output is the answer suggestions. Specifically, the generative AI model is executed, and if "urgent" is included, an answer suggestion for urgent response is generated.
[1256] Step 6:
[1257] Generate email suggestions
[1258] The server creates a candidate email based on the generated answer plan and displays it on the terminal. The input is the generated answer plan, and the output is the candidate email displayed to the user. Specifically, the server sets the subject, body, and recipient based on the answer plan and creates a draft of the email.
[1259] Step 7:
[1260] User confirmation and submission
[1261] The user checks the email candidates displayed on the terminal, makes corrections as necessary, and then sends them. The input is the generated email candidates, and the output is the final email corrected by the user. In concrete terms, the user checks the displayed email candidates, makes corrections, and clicks the send button to send the final email.
[1262] Through the above steps, a system is constructed in which the server, terminals, and users work together to efficiently process and respond to unread emails.
[1263] 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.
[1264] This invention is a system that retrieves new, unread emails from a mail server, analyzes them, and automatically generates appropriate responses. It also incorporates an emotion engine that recognizes the user's emotions, allowing it to adjust the priority of emails and the content of responses. This significantly reduces the effort required for users to respond to emails, and enables them to handle emails appropriately according to their emotions. This system is operated by the server, terminals, and users.
[1265] Overall system overview
[1266] Server: Receives emails, analyzes them, sets priorities, selects answer templates, generates answer suggestions, recognizes user emotions, and adjusts priorities and answers.
[1267] Terminal: Displays generated email candidates, displays high-priority emails in a separate tab, displays emotion recognition results, and allows the user to confirm, correct, and send.
[1268] User: Check the generated email suggestions, make corrections and enter sentiments, and send.
[1269] Email capture and analysis
[1270] The server periodically retrieves new unread emails from the mail server, and this process ensures that the latest emails are included in the system.
[1271] Read the subject and body of the acquired email and extract specific keywords ("Urgent", "By today", "Answers", "Summit").
[1272] Displaying Priorities
[1273] The server determines the urgency of the email based on the extracted keywords and classifies the priority as "high," "medium," or "low."
[1274] Emails with a high urgency level will be displayed in a separate tab on the device.
[1275] Emotion recognition and priority adjustment
[1276] The server analyzes user input (text, voice, facial expressions, etc.) in real time and recognizes emotions using an emotion engine.
[1277] Reprioritizing emails based on the perceived emotion: for example, if a user is feeling "stressed," emails related to that user will be prioritized higher.
[1278] Generate and refine answer proposals
[1279] The server selects an appropriate answer template based on the extracted keywords and the recognized user sentiment.
[1280] Based on the selected template, a specific answer proposal is generated. The placeholders in the template are replaced based on the information in the email body and the user's sentiment to create the answer proposal.
[1281] Generate email suggestions
[1282] The server creates a candidate email based on the generated response, including addressing, subject (e.g., adding "Re:"), and constructing the body of the email.
[1283] The device displays the created email suggestions to the user, along with the emotion recognition results, which the user can review and modify.
[1284] Specific examples
[1285] 1. Get new emails
[1286] The server retrieves a new unread email from the mail server with the subject "Confirm CSO report (urgent)".
[1287] 2. Email Analysis
[1288] The server analyzes the email body and subject and extracts the keyword "urgent."
[1289] 3. Setting priorities
[1290] The server determines that the urgency of the email is "high" and sets the priority of this email to high.
[1291] 4. Emotion recognition
[1292] The server recognizes the user's emotions from the input text, voice, or facial expressions. In this case, it recognizes that the user is feeling "stressed."
[1293] 5. Adjust priorities
[1294] The server further prioritizes related emails based on the perceived emotion "stress."
[1295] 6. Generating Answer Suggestions
[1296] The server selects an answer template that includes "urgent" and generates answer suggestions based on the user's sentiment:
[1297] We will investigate this matter as soon as possible and respond accordingly. If you have any questions, please let us know. We will add expressions to reduce user stress.
[1298] 7. Create email suggestions
[1299] The server uses the above answer ideas to create email candidates and displays them on the terminal.
[1300] 8. User Confirmation and Submission
[1301] The user checks the displayed email candidates, corrects them as necessary, and then clicks the send button to send the email.
[1302] In this way, the system of the present invention can respond to users' emails in an efficient and emotionally sensitive manner.
[1303] The processing flow will be explained below.
[1304] Step 1: Check your email
[1305] The server periodically accesses the mail server to check for new unread emails. If there are any new emails, it retrieves them.
[1306] Step 2: Importing emails
[1307] The server reads the subject and body of the received email, processes the email's character encoding appropriately, and treats it as text data.
[1308] Step 3: Keyword extraction
[1309] The server uses natural language processing libraries and regular expressions to detect specific keywords (such as "urgent," "by today," "Answers," and "summit") in the subject and body of the email, and records the detected keywords.
[1310] Step 4: Determine the level of urgency
[1311] The server determines the urgency of the email based on the extracted keywords. For example, if the email contains keywords such as "urgent" or "by today," the server determines the urgency as "high."
[1312] Step 5: Setting priorities
[1313] The server assigns a priority to each email based on its urgency, categorizing it as "high," "medium," or "low," and records the priority setting in a database.
[1314] Step 6: Viewing Priorities
[1315] The device will display emails set as "high" priority in a separate tab, allowing users to quickly check important emails.
[1316] Step 7: Emotion Recognition
[1317] The server collects user input (text, voice, facial expressions, etc.) in real time and uses an emotion engine to recognize emotions, for example by analyzing words and phrases in the text, the tone of voice, and facial features.
[1318] Step 8: Adjust priorities based on emotions
[1319] The server re-prioritizes emails based on the user's emotions as determined by the emotion engine. For example, if a user is recognized as feeling "stressed," emails related to that user will be prioritized higher.
[1320] Step 9: Select a template
[1321] The server selects an appropriate answer template based on the extracted keywords and the user's recognized emotions. For example, if the keyword "urgent" is detected and the user is feeling "stressed," the server applies the appropriate template.
[1322] Step 10: Generate answer suggestions
[1323] The server generates a specific answer proposal based on the selected template, replacing placeholders in the template based on the information in the email body and the user's sentiment to create the answer proposal.
[1324] Step 11: Generate email candidates
[1325] The server creates a candidate email based on the generated response, including addressing, subject (e.g., adding "Re:"), and constructing the body of the email.
[1326] Step 12: View email suggestions
[1327] The device displays the created email suggestions to the user, along with the emotion recognition results, which the user can review and modify.
[1328] Step 13: Sending an email
[1329] The user checks the email suggestions, makes corrections as necessary, and then clicks the send button.
[1330] The server actually sends the confirmed email according to the user's operation.
[1331] The above steps involve specific processing, from receiving and analyzing emails, to generating and sending reply suggestions, as well as recognizing and reflecting the user's emotions. This allows for efficient and emotionally sensitive responses to users' emails.
[1332] Example 2
[1333] 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."
[1334] Conventional email management systems lack the functionality to enable users to respond quickly and effectively to large volumes of email, and have particular issues with prioritizing urgent emails and automatically responding to them. Furthermore, they lack the ability to respond in a way that takes into account the user's emotions, and there is a need for a method to improve stressful work environments.
[1335] 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.
[1336] In this invention, the server includes means for acquiring new, unread emails from the email server, means for analyzing the subject and text of the acquired emails and extracting specific keywords, means for determining the urgency of the emails based on the extracted keywords and setting priorities, means for analyzing user input and recognizing emotions, means for adjusting the priorities of the emails based on the recognized emotions, means for selecting an appropriate answer template based on the extracted keywords and the recognized emotions and generating answer proposals, and means for creating email candidates based on the generated answer proposals and displaying them to the user. This allows users to respond to large volumes of emails quickly and effectively, and enables email processing that takes emotions into consideration.
[1337] A "mail server" is a server system for managing the sending and receiving of e-mail.
[1338] "New unread email" refers to newly received email that has not yet been opened by the user.
[1339] The "subject" is text information that is displayed as the title of the email.
[1340] The "body" is text information that describes the main content of the email.
[1341] "Analysis" refers to the process of automatically reading the contents of an email and extracting meaning and information.
[1342] "Keywords" are words or phrases that are considered to be particularly important in the content of an email.
[1343] "Urgency" is a measure of how quickly an email should be responded to.
[1344] "Priority" is a criterion for determining which of a large number of emails should be processed first.
[1345] A "separate tab" is a separate section displayed within the same application window.
[1346] "User" refers to the person who actually uses this system.
[1347] "Input" refers to the act of a user providing information such as text, voice, or facial expression to a system.
[1348] "Emotions" refer to the feelings and psychological state that users experience when using a system.
[1349] "Emotion recognition" means that the system analyzes and understands the user's feelings and psychological state.
[1350] A "reply template" is a pre-defined standard reply to an email.
[1351] A "proposed answer" is a suggested sentence generated as a specific reply to an email.
[1352] A "candidate email" is an email that is prepared for sending and is based on the generated answer plan.
[1353] "Display" refers to the system outputting the processing results to the user's screen.
[1354] This system retrieves new, unread emails from a mail server, analyzes their contents, and automatically generates appropriate responses. Furthermore, by combining it with an emotion engine that recognizes the user's emotions, it has the ability to adjust the priority of emails and the content of responses.
[1355] System configuration
[1356] This system consists of three elements: a server, a terminal, and a user.
[1357] server
[1358] The server consists of the following hardware and software:
[1359] Hardware: Server computer (e.g., x86 architecture processor, 16GB or more memory, SSD storage, etc.)
[1360] Software: IMAP protocol library for email retrieval, natural language processing (NLP) library (such as Python's NLTK or SpaCy), emotion recognition engine (such as Watson Tone Analyzer or Microsoft Azure's Emotion API)
[1361] Terminal
[1362] A terminal is a device that is directly operated by a user (e.g., a PC, a smartphone, or a tablet) and includes the following software:
[1363] Hardware: Mouse, keyboard, display, microphone, camera, etc.
[1364] Software: Web browser, email client software, dedicated applications
[1365] User
[1366] A User is an individual who uses the system to review, modify, and send emails. A User provides the following input:
[1367] Input data: text input, voice input, facial expression data
[1368] System Functions and Operation
[1369] The main functions of this system and the specific processes involved will be explained below.
[1370] Get new emails
[1371] The server accesses the mail server at regular intervals to retrieve new, unread emails. This process uses the IMAP protocol. For example, it retrieves new emails with the subject "Confirmation of CSO report (urgent)."
[1372] Email analysis
[1373] The server analyzes the subject and body of the email. It uses a natural language processing library (Python's NLTK or SpaCy) to extract specific keywords. For example, the keyword "urgent" can be found in "Subject: Confirm CSO report (urgent)."
[1374] Keyword extraction and prioritization
[1375] The server determines the urgency of the email based on the extracted keywords and classifies the priority as "high," "medium," or "low." For example, an email containing the keyword "urgent" is set to "high."
[1376] emotion recognition
[1377] The server analyzes the user's input (text, voice, facial expressions, etc.) and uses an emotion recognition engine to recognize the user's emotions. For example, if the user is feeling "stressed," that emotion is recognized.
[1378] Priority Adjustment
[1379] The server reprioritizes emails based on the perceived emotion: for example, if a user is feeling "stressed," emails related to that user will be given a higher priority.
[1380] Generate answer suggestions
[1381] The server selects an appropriate answer template based on the extracted keywords and the recognized sentiment, and generates a specific answer suggestion, such as "We will look into this matter and respond as soon as possible. Please let us know if you have any questions."
[1382] Generate email suggestions
[1383] The server then creates email suggestions based on the generated answer proposals and displays them on the terminal. The user can then check them and make corrections as necessary.
[1384] User confirmation and submission
[1385] The user checks the email candidates displayed on the terminal, makes corrections as necessary, and then clicks the send button to send the email.
[1386] Specific examples
[1387] Specific examples are shown below.
[1388] 1. Get new emails
[1389] The server retrieves a new unread email from the mail server with the subject "Confirm CSO report (urgent)".
[1390] 2. Email Analysis
[1391] The server analyzes the email body and subject and extracts the keyword "urgent."
[1392] 3. Keyword extraction and prioritization
[1393] The server determines the urgency of the email as "high" based on the keyword "urgent."
[1394] 4. Emotion recognition
[1395] The server analyzes the user's input (text, voice, facial expressions, etc.) and recognizes that the user is feeling "stressed."
[1396] 5. Adjust priorities
[1397] The server will further prioritize related emails based on the emotion "stress."
[1398] 6. Generating Answer Suggestions
[1399] The server selects a response template containing "urgent" and generates a response proposal: for example, "We will check and respond to this matter as soon as possible. If you have any questions, please let us know. Don't worry, we will handle it."
[1400] 7. Generate email suggestions
[1401] The server uses the generated answer plan to create email candidates and displays them on the terminal.
[1402] 8. User Confirmation and Submission
[1403] The user checks the displayed email candidates, makes corrections as necessary, and then clicks the send button to send the email.
[1404] Prompt Sentence Examples
[1405] "Please extract the content of emails with the word 'urgent' in the subject line and generate a suggested response."
[1406] "If your users are stressed, prioritize relevant emails."
[1407] "Please explain the process from retrieving new unread emails to generating suggested answers."
[1408] As described above, the system of the present invention can improve the efficiency of users' email correspondence and process emails in a manner that takes emotions into consideration.
[1409] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1410] Step 1: Get new emails
[1411] The server accesses the mail server at regular intervals to obtain new unread mail.
[1412] The input is a list of unread emails from a mail server.
[1413] The output is the subject and content data for each unread email.
[1414] Specific behavior: Uses IMAP protocol to check and retrieve unread emails in the "INBOX" folder. For example, unread emails with the subject "Confirm CSO report (urgent)".
[1415] Step 2: Analyzing the email
[1416] The server analyzes the subject and body of the email and extracts specific keywords.
[1417] The input is the subject and body of each unread email obtained in step 1.
[1418] The output is a list of extracted keywords.
[1419] Specific behavior: Using a natural language processing (NLP) library, the email content is analyzed and keywords such as "urgent" and "by today" are extracted. For example, the keyword "urgent" is identified from the email title "Confirm CSO report (urgent)."
[1420] Step 3: Keyword extraction and prioritization
[1421] The server determines the urgency of the email based on the extracted keywords and classifies the priority as "high," "medium," or "low."
[1422] The input is the keyword list extracted in step 2.
[1423] The output is the priority of the email (high, medium, low).
[1424] Specific behavior: Refer to a pre-defined keyword list, and if "urgent" is included, classify it as "High." As a result, an email with the subject "Confirm CSO report (urgent)" will be set as "High."
[1425] Step 4: Emotion Recognition
[1426] The server analyzes the user's input (text, voice, facial expressions, etc.) and recognizes the user's emotions using an emotion recognition engine.
[1427] The input can be text, voice, or facial expression data from the user.
[1428] The output is the recognized user emotion label (e.g., stress, joy, surprise).
[1429] Specific operation: Text and voice data is analyzed in real time using Watson Tone Analyzer, Microsoft Azure's Emotion API, etc. For example, consider the case where a user is recognized as feeling "stressed."
[1430] Step 5: Adjust priorities
[1431] The server reprioritizes emails based on the perceived sentiment.
[1432] The inputs are the emotion labels recognized in step 4 and the priorities set in step 3.
[1433] The output is the adjusted priority of the email.
[1434] Specific behavior: If a user is feeling "stressed," emails related to that user will be given a higher priority. For example, emails set to "high" will be re-prioritized to "very high."
[1435] Step 6: Generate answer suggestions
[1436] The server selects an appropriate answer template based on the extracted keywords and the recognized emotions, and generates specific answer suggestions.
[1437] The inputs are the keywords extracted in step 2 and the emotion labels recognized in step 4.
[1438] The output is the generated answer proposal.
[1439] Specific behavior: Select the best answer from the answer templates and use the generative AI model to generate a specific sentence, such as "We will look into this matter and respond as soon as possible. Please let us know if you have any questions." To reduce user stress, we add phrases such as "Don't worry, we'll handle it."
[1440] Step 7: Generate email suggestions
[1441] The server constructs email candidates based on the generated answer proposals.
[1442] The input is the proposed answer generated in step 6.
[1443] The output is the created email candidate.
[1444] Specific operation: Constructs the email recipient, subject (adding "Re:"), and body. For example, generates an email candidate with the subject "Re: Confirmation of CSO report (urgent)".
[1445] The terminal displays these email candidates to the user and also presents the results of emotion recognition.
[1446] Step 8: User Confirmation and Submission
[1447] The user checks the email candidates displayed on the terminal and makes corrections as necessary.
[1448] The input is the email candidate generated in step 7.
[1449] The output is the final email as modified by the user.
[1450] Specific operation: The user edits the text as needed and clicks the send button to send the email. For example, the user fine-tunes the text and finally clicks the "Send" button to send the email.
[1451] (Application example 2)
[1452] 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."
[1453] Conventional email response systems have difficulty efficiently processing new, unread emails, and do not adequately prioritize emails based on their urgency or emotions. This often leads to excessive stress for users. The present invention aims to provide a system that efficiently determines the urgency of unread emails, uses emotion recognition to set appropriate priorities, and realizes efficient, emotion-sensitive email responses.
[1454] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for acquiring unread new emails from the email server, means for analyzing the subject and body of the acquired emails and extracting specific keywords, means for determining the urgency of the emails based on the extracted keywords and user emotion recognition and setting a priority level, means for displaying prioritized emails in a separate tab, means for selecting an appropriate answer template based on the extracted keywords and emotion recognition and generating answer proposals, and means for creating email candidates based on the generated answer proposals and displaying them to the user. This makes it possible to significantly improve the efficiency of email responses while reducing user stress.
[1455] A "mail server" is a server for sending and receiving emails via a network such as the Internet.
[1456] "New unread email" is the most recent email that arrived in the user's inbox that they have not yet read.
[1457] "Means of acquisition" refers to the function for extracting data from the mail server and importing it into the system.
[1458] The "subject" refers to the title of the email, and is text that briefly describes the content of the email.
[1459] The "body" is the part of the email where the main content is written, and is text that includes detailed information about the message.
[1460] "Means for analysis" refers to the function of investigating and evaluating the contents of the acquired emails and extracting useful information.
[1461] "Specific keywords" are important words or phrases that are extracted when determining the urgency and content of an email.
[1462] "Means for extraction" is a function for extracting necessary keywords from the analyzed information.
[1463] "Emotion recognition" is a technology that reads emotions from a user's text, voice, facial expressions, etc.
[1464] "Urgency" is a measure of the promptness and importance of the response required by the email.
[1465] The "means for setting priorities" is a function that determines the order in which emails should be processed based on urgency and emotional recognition.
[1466] "Means to display in a separate tab" is a function for visually displaying high priority emails separately from other emails.
[1467] A "reply template" is a pre-defined text template containing common reply content.
[1468] The "means for generating answer suggestions" is a function that automatically creates specific reply content based on the extracted keywords and the results of emotion recognition.
[1469] The "means for creating email candidates" is a function for creating sendable emails from the generated answer proposals.
[1470] "Means for displaying to the user" is a function that displays the generated email candidates on the user's screen, allowing them to check and modify them.
[1471] This invention is a system that retrieves new, unread emails from a mail server, analyzes them, and determines the urgency of each email based on extracted keywords and user emotion recognition, and sets priorities. This system aims to improve the efficiency of customer inquiries and reduce user stress, particularly in content distribution services.
[1472] Hardware and software used
[1473] Server: Retrieves emails from the email server, analyzes them, extracts keywords, determines urgency, recognizes emotions, selects answer templates, generates answer suggestions, and creates email candidates.
[1474] On the device: Generated email candidates are displayed, high-priority emails are displayed in a separate tab, emotion recognition results are displayed, and the user can confirm, correct, and send the email.
[1475] Emotion engine: Software that analyzes user input and recognizes emotions, specifically using emotion analysis tools like TextBlob.
[1476] System Configuration and Operation
[1477] The server periodically retrieves new, unread emails from the email server. It analyzes the subject and body of the retrieved emails and extracts specific keywords. Keywords include "urgent" and "by today."
[1478] The server determines the urgency of the email based on the extracted keywords and emotion recognition by the emotion engine, and sets the priority. For example, if the keyword contains "urgent," the server sets the urgency of the email high. Also, if the user is feeling stressed, the server further increases the priority of related emails.
[1479] Priority-set emails are displayed in a separate tab on the device, allowing users to immediately check emails with high urgency.
[1480] The server selects an appropriate answer template based on the extracted keywords and the result of emotion recognition, and generates a suggested answer. Based on the generated suggested answer, email candidates are created and displayed on the terminal.
[1481] The user can then check the displayed email suggestions, modify them as necessary, and send them. This process reduces stress for the user and enables efficient email correspondence.
[1482] Specific examples
[1483] For example, consider the case where the server retrieves a new unread email from the mail server with the subject "Feedback: Regarding service improvements," which contains the phrase "Please respond as soon as possible."
[1484] 1. The server analyzes this email and extracts the keyword "urgent."
[1485] 2. The emotion engine analyzes the email text and recognizes that the user is feeling stressed.
[1486] 3. The server determines that the email is urgent and sets a priority.
[1487] 4. High priority emails will be displayed in a separate tab on your device.
[1488] 5. The server selects an answer template that includes "urgent" and generates the following answer: "We apologize for the stress this may cause. We will respond as soon as possible."
[1489] 6. A suggested email will be created based on this answer and displayed on your device.
[1490] 7. The user confirms and corrects this and submits it.
[1491] Prompt Sentence Examples
[1492] Subject: Feedback: How can we improve our service?
[1493] Main text:
[1494] Thank you for your help. I noticed the following issues while using the service.
[1495] I would appreciate it if you could respond as soon as possible. I have included "urgent" in the subject line, so I would be grateful if you could deal with it as soon as possible.
[1496] Long loading times
[1497] The screen layout is messed up
[1498] This will reduce stress for users while significantly improving the efficiency of responding to inquiries.
[1499] The above description of the "Mode for Carrying Out the Invention" is specific and detailed, and can serve as a reference for others to accurately understand and practice the present invention.
[1500] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1501] Step 1:
[1502] Get new emails from the mail server
[1503] The server connects to the mail server and retrieves new, unread emails. To do this, it uses the IMAP protocol or similar to retrieve data from the mail server. Specifically, the server sends a query to the mail server, retrieves the list of unread emails, and stores the contents of those emails on the server.
[1504] Input: Mail server connection information, authentication information
[1505] Output: List of new unread emails and the contents of each email
[1506] Step 2:
[1507] Analyze email subjects and text to extract specific keywords
[1508] The server analyzes the subject and body of the email using a text analysis tool (e.g., a natural language processing library) to extract specific keywords, such as "urgent" and "by today."
[1509] Input: Subject and body of new unread email
[1510] Output: List of extracted keywords per email
[1511] Step 3:
[1512] Recognizing user emotions using an emotion engine
[1513] The server receives user input (e.g., text, voice, facial expression, etc.) and analyzes the emotion using emotion engines such as TextBlob. Specifically, the email body and the user's response are input into an emotion model to determine whether the emotion is positive or negative.
[1514] Input: User input data (text, voice, facial expressions, etc.)
[1515] Output: User sentiment analysis results (negativity, positivity, etc.)
[1516] Step 4:
[1517] Determine the urgency of emails and set priorities
[1518] The server determines the urgency of the email and sets a priority based on the keywords extracted in the previous step and the results of emotion recognition. Specifically, if the keyword "urgent" is used or if the user is feeling strong stress, the urgency is set high and the priority is classified as high.
[1519] Input: List of extracted keywords, sentiment analysis results
[1520] Output: Urgency and priority of the email
[1521] Step 5:
[1522] Display high priority emails in a separate tab
[1523] Based on the priority information received from the server, the terminal displays emails that have been set to a high priority in a separate tab so that the user can check them immediately.
[1524] Input: Urgency and priority of the email
[1525] Output: High priority emails displayed in a separate tab
[1526] Step 6:
[1527] Select the appropriate answer template and generate answer suggestions
[1528] The server selects an appropriate answer template based on the extracted keywords and the results of emotion recognition. A specific answer is generated based on the selected template. For example, if the message is "urgent," the server uses the template "We will respond as soon as possible" and adds expressions that take the user's emotions into consideration.
[1529] Input: Extracted keywords, sentiment analysis results
[1530] Output: Generated answer ideas
[1531] Step 7:
[1532] Create email suggestions and display them to the user
[1533] The server creates email suggestions based on the generated answer proposals and presents them to the user through a user interface. The user can check them and make corrections as necessary.
[1534] Input: Generated answer ideas
[1535] Output: Email suggestions displayed in the user interface
[1536] Step 8:
[1537] User confirmation and submission
[1538] The user checks the displayed email candidates, makes any necessary corrections, and then clicks the send button to send the email. The server then actually sends the email content that the user has confirmed.
[1539] Input: User-corrected email suggestions
[1540] Output: Email sent
[1541] 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.
[1542] 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.
[1543] 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.
[1544] [Fourth embodiment]
[1545] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[1546] 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.
[1547] 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).
[1548] 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.
[1549] 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.
[1550] 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).
[1551] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[1552] 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.
[1553] 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.
[1554] 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.
[1555] 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.
[1556] 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.
[1557] 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."
[1558] This invention is a system that retrieves new, unread emails from a mail server, analyzes them, and automatically generates appropriate responses. This allows users to significantly reduce the effort required to respond to emails and process emails more efficiently. This system is operated by the server, terminals, and users.
[1559] Overall system overview
[1560] Server: Receives, analyzes, prioritizes, selects response templates, and generates response proposals.
[1561] Terminal: Displays generated email candidates, displays high priority emails in a separate tab, and allows the user to confirm, edit, and send.
[1562] User: Check the generated email suggestions, make corrections, and send them.
[1563] Email capture and analysis
[1564] The server periodically retrieves new unread emails from the mail server, and this process ensures that the latest emails are included in the system.
[1565] Read the subject and body of the acquired email and extract specific keywords ("Urgent", "By today", "Answers", "Summit").
[1566] Displaying Priorities
[1567] The server determines the urgency of the email based on the extracted keywords and classifies the priority as "high," "medium," or "low."
[1568] Emails with a high urgency level are displayed in a separate tab on the device, allowing users to respond quickly.
[1569] Generate answer suggestions
[1570] The server selects an appropriate response template based on the extracted keywords. For example, if "urgent" is detected, it applies a template for emergency responses.
[1571] Generates a specific response proposal based on the selected template. Replaces the placeholders in the template with information from the email body to create the response proposal.
[1572] Generate email suggestions
[1573] The server creates a candidate email based on the generated response, including addressing the recipient, modifying the subject (e.g., adding "Re:"), and constructing the body of the email.
[1574] The terminal displays the created email candidate to the user, who can confirm and modify it.
[1575] Specific examples
[1576] 1. Get new emails
[1577] The server retrieves a new unread email from the mail server with the subject "Confirm CSO report (urgent)".
[1578] 2. Email Analysis
[1579] The server analyzes the email body and subject and extracts the keyword "urgent."
[1580] 3. Setting priorities
[1581] The server determines that the urgency of the email is "high" and sets the priority of this email to high.
[1582] 4. Display of priority
[1583] The terminal displays emails with a "high" priority in a separate tab to alert the user.
[1584] 5. Generating Answer Suggestions
[1585] The server selects an answer template containing "urgent" and generates the following suggested answer:
[1586] We will look into this matter and deal with it as soon as possible. Please let us know if you have any questions.
[1587] 6. Create email suggestions
[1588] The server uses the above answer ideas to create email candidates and displays them on the terminal.
[1589] 7. User Confirmation and Submission
[1590] The user checks the displayed email candidates, corrects them as necessary, and then clicks the send button to send the email.
[1591] In this way, the system of the present invention can improve the efficiency of email correspondence operations and appropriately process emails that require a quick response.
[1592] The processing flow will be explained below.
[1593] Step 1: Check your email
[1594] The server periodically accesses the mail server to check for new unread emails. If there are any new emails, it retrieves them.
[1595] Step 2: Importing emails
[1596] The server reads the subject and body of the received email, processes the email's character encoding appropriately, and treats it as text data.
[1597] Step 3: Keyword extraction
[1598] The server uses natural language processing libraries and regular expressions to detect specific keywords (such as "urgent," "by today," "Answers," and "summit") in the subject and body of the email, and records the detected keywords.
[1599] Step 4: Determine the level of urgency
[1600] The server determines the urgency of the email based on the extracted keywords. For example, if the email contains keywords such as "urgent" or "by today," the server determines the urgency as "high."
[1601] Step 5: Setting priorities
[1602] The server assigns a priority to each email based on its urgency, categorizing it as "high," "medium," or "low," and records the priority setting in a database.
[1603] Step 6: Viewing Priorities
[1604] The device will display emails set as "high" priority in a separate tab, allowing users to quickly check important emails.
[1605] Step 7: Select a template
[1606] The server selects an appropriate response template based on the extracted keywords, for example, if the keyword "urgent" is detected, it will select a template for emergency response.
[1607] Step 8: Generate answer suggestions
[1608] The server generates a specific response proposal based on the selected template, replacing placeholders in the template with information extracted from the email body to create the response proposal.
[1609] Step 9: Generate email suggestions
[1610] The server creates a candidate email based on the generated answer, constructing the recipient, subject (e.g., adding "Re:"), and body of the email.
[1611] Step 10: View email suggestions
[1612] The terminal displays the created email candidates to the user, allowing the user to check and modify them.
[1613] Step 11: Sending an email
[1614] The user checks the email suggestions, makes corrections as necessary, and then clicks the send button.
[1615] The server actually sends the confirmed email according to the user's operation.
[1616] The above are the specific processing steps from receiving emails to analyzing them, generating and sending answer proposals, allowing users to respond to emails efficiently.
[1617] Example 1
[1618] 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."
[1619] Conventional email management systems have the problem of requiring a great deal of time and effort to respond to the large volume of emails received by users. Urgent emails, in particular, require a prompt response, but appropriate processing is often delayed. Furthermore, analyzing the content of emails and generating appropriate responses based on that information is also time-consuming. There is a need to solve these problems and improve the efficiency of email response operations.
[1620] 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.
[1621] In this invention, the server includes means for acquiring new, unread emails from the email server, means for analyzing the subject and text of the acquired emails and extracting specific keywords, means for determining the urgency of the emails based on the extracted keywords and setting priorities, means for displaying prioritized emails in separate tabs, means for selecting an appropriate answer template based on the extracted keywords and generating answer proposals, means for creating email candidates based on the generated answer proposals and displaying them to the user, and means for the user to check the email candidates, correct them, and send them. This allows users to streamline their email response work and quickly respond to emails with high urgency.
[1622] A "mail server" is a server device that sends and receives e-mails and stores and manages them in a form that users can access.
[1623] "New email" refers to new, unread email that has arrived in a user's email account.
[1624] "Analysis" is the process of analyzing the information (subject and body) of the acquired email and extracting specific keywords.
[1625] "Keywords" are important words or phrases contained in the email body or subject line, and are used to determine the urgency and type of the email.
[1626] "Urgency" refers to the necessity or priority of responding to an email, and is expressed as a classification such as "high," "medium," or "low."
[1627] The "priority" indicates the order in which multiple emails should be processed based on their importance and urgency.
[1628] An "answer template" is a template for a document that is generated based on specific keywords and is used to efficiently create answer proposals.
[1629] A "proposed answer" is a candidate reply message generated based on the selected answer template, which the user can confirm and modify to become the final reply email.
[1630] The "email candidate" is a draft of a reply email created based on the generated answer plan, and includes a recipient, a subject, and a body.
[1631] "User" refers to any individual or entity using this system who reviews, modifies, and sends email.
[1632] "Sending" refers to the act of actually sending the email candidate that the user has confirmed and corrected to the recipient.
[1633] MODE FOR CARRYING OUT THE INVENTION
[1634] This invention is a system that retrieves new, unread emails from a mail server, analyzes them, and automatically generates appropriate responses. This allows users to significantly reduce the effort required to respond to emails and process emails more efficiently. This system is operated by the server, terminals, and users.
[1635] Hardware and software used
[1636] Server: Responsible for receiving, analyzing, prioritizing emails, selecting answer templates, and generating answer proposals. It uses IMAP (e.g., Dovecot, Microsoft Exchange) as the protocol for receiving emails and SMTP (e.g., Postfix, Sendmail) as the protocol for sending emails.
[1637] Terminal: Displays generated email candidates, displays high-priority emails in a separate tab, and allows the user to confirm, edit, and send. Provides a GUI for the email application, providing an environment that is easy for users to operate.
[1638] User: The entity that checks the generated email candidates, corrects them, and then sends them.
[1639] Email capture and analysis
[1640] The server accesses the mail server at regular intervals to retrieve new unread emails. This process uses the IMAP protocol.
[1641] Specific keywords (e.g., "urgent," "by today," "Answers," "summit") are extracted from the subject and body of the emails obtained using a natural language processing library (e.g., NLTK, spaCy).
[1642] Displaying Priorities
[1643] The server determines the urgency of the email based on the extracted keywords and classifies the priority as "high," "medium," or "low." To determine the urgency, it references a database that maps keywords to priorities.
[1644] Emails with a high urgency level will be displayed in a separate tab on the device, allowing users to respond quickly.
[1645] Generate answer suggestions
[1646] The server selects an appropriate answer template from a database based on the identified keywords. The selected template is a pre-prepared document template.
[1647] The placeholders in the template are replaced with information from the email subject and body to generate specific suggested answers.
[1648] Generate email suggestions
[1649] The server creates a candidate email based on the generated answer, which includes a recipient, a subject (e.g., adding "Re:" to the subject), and a message body.
[1650] Displaying email suggestions and user confirmation
[1651] The terminal displays the composed email candidate to the user, and the email application editor screen allows the user to check and modify the content of the email.
[1652] The user checks the displayed email candidates, corrects them as necessary, and then prepares to send them.
[1653] Send email
[1654] After the user clicks the send button, the terminal sends the email via the server, using the SMTP protocol.
[1655] Specific examples
[1656] 1. Get new emails
[1657] The server retrieves a new unread email from the mail server with the subject "Confirm CSO report (urgent)".
[1658] 2. Email Analysis
[1659] The server analyzes the email body and subject and extracts the keyword "urgent."
[1660] 3. Setting priorities
[1661] The server determines that the urgency of the email is "high" and sets the priority of this email to high.
[1662] 4. Display of priority
[1663] The terminal displays emails with a "high" priority in a separate tab to alert the user.
[1664] 5. Generating Answer Suggestions
[1665] The server selects an answer template containing "urgent" and generates the following answer:
[1666] "We will look into this matter and respond as soon as possible. Please let us know if you have any questions."
[1667] 6. Create email suggestions
[1668] The server uses the above answer ideas to create email candidates and displays them on the terminal.
[1669] 7. User Confirmation and Submission
[1670] The user checks the displayed email candidates, corrects them as necessary, and then clicks the send button to send the email.
[1671] Example of a prompt to input to the fund "generative AI model":
[1672] "Please generate an urgent response plan for the following email: Subject: Confirmation of CSO report (urgent), Body: Please confirm the CSO report as soon as possible."
[1673] "Please provide a response template to be applied when a new email contains the keyword 'urgent'."
[1674] This system allows users to significantly improve the efficiency of their email response operations, enabling them to respond quickly to emails that are particularly urgent.
[1675] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1676] Step 1: Get email
[1677] The server connects to the mail server at regular intervals to retrieve new unread emails. It receives mail server authentication information and folder information as input and generates a list of new unread emails as output.
[1678] Data processing: Download unread emails from the "INBOX" folder using the IMAP protocol.
[1679] Specific operation: The server retrieves a new unread email with the subject "Confirm CSO report (urgent)."
[1680] Step 2: Analyzing the email
[1681] The server analyzes the subject and body of the retrieved email and extracts specific keywords. It receives the subject and body of the email as input and generates a list of extracted keywords as output.
[1682] Data Computation: Perform text analysis using natural language processing libraries (e.g., NLTK, spaCy) to extract specific keywords.
[1683] Specific operation: The server extracts keywords such as "urgent," "CSO report," and "confirmation" from the email body.
[1684] Step 3: Prioritize and display
[1685] The server determines the urgency of the email based on the extracted keywords and sets the priority. It receives the extracted keyword list as input and generates the priority determination result as output.
[1686] Data calculation: Refer to a database of keywords and priorities to determine the urgency and classify it as "high," "medium," or "low."
[1687] Specific operation: The server determines the urgency of the email as "high" based on the keyword "urgent" and sets the priority.
[1688] The terminal displays emails with a "high" priority in a separate tab. It receives the priority determination result as input and generates the email displayed in the separate tab as output.
[1689] Specific behavior: The device displays "urgent" emails in a red tab to alert the user.
[1690] Step 4: Generate answer suggestions
[1691] The server selects an appropriate answer template based on the extracted keywords and generates a proposed answer. It receives the extracted keywords and email body information as input and generates a proposed answer as output.
[1692] Data processing: Select a corresponding template from the database and create a suggested answer by replacing the placeholders with the email content.
[1693] Specific operation: The server selects a template that includes "urgent" and generates a suggested answer that reads, "We will look into this matter and respond as soon as possible. Please let us know if you have any questions."
[1694] Step 5: Generate email suggestions
[1695] The server creates email candidates based on the generated answer suggestions, taking the generated answer suggestions as input and generating email candidates as output.
[1696] Data processing: Based on the proposed answer, set the recipient, modify the subject (e.g., add "Re:"), and construct the body of the email.
[1697] Specific operation: The server creates an email candidate with the subject "Re: Confirmation of CSO report (urgent)" and the generated answer proposal.
[1698] Step 6: Display email candidates and confirm with the user
[1699] The terminal displays the generated email candidates to the user. It receives email candidates as input and generates the displayed email candidates as output.
[1700] Specific behavior: The user reviews email suggestions on the editor screen of the email application.
[1701] The user checks the displayed email candidates, corrects them as necessary, and prepares to send them.The system receives the displayed email candidates as input and generates the corrected email content as output.
[1702] Specific action: The user adjusts the wording and clicks the send button.
[1703] Step 7: Send email
[1704] The terminal sends the email through the server after the user clicks the send button, taking the modified email content as input and generating the sent email as output.
[1705] Data processing: Send email using the SMTP protocol.
[1706] Specific operation: The sent email is delivered to the address specified by the user.
[1707] The above is the specific processing flow of this system, showing the detailed operations from input to output at each step. This system will greatly improve the efficiency of users' email response work and enable them to respond quickly to even highly urgent emails.
[1708] (Application example 1)
[1709] 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."
[1710] In business environments such as logistics centers, there is a need to respond to a large number of emails and to process them quickly and efficiently, but traditional manual email processing takes time and effort and is prone to errors. The challenge is to solve this problem and improve efficiency and accuracy through automation.
[1711] 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.
[1712] In this invention, the server includes means for acquiring new, unread emails from the email server, means for analyzing the subject and body of the acquired email and extracting specific keywords, means for determining the urgency of the email based on the extracted keywords and setting a priority, means for displaying the prioritized emails in a separate tab, means for selecting an appropriate answer template based on the extracted keywords and generating answer proposals, means for automatically generating appropriate answer proposals using a generative AI model, and means for creating email candidates based on the generated answer proposals and displaying them to the user. This significantly reduces the effort required for users to respond to emails and enables them to process emails quickly and efficiently.
[1713] A "mail server" is a system that manages and stores emails received by users.
[1714] "Means for obtaining new unread emails" is a function for obtaining new emails that have not yet been read from the email server.
[1715] The "subject" refers to the title or subject of an email, and is the part that gives an overview of the content.
[1716] The "body" is the part that describes the main content of the email.
[1717] "Keyword extraction means" is a function for detecting and extracting specific words or phrases within an email.
[1718] The "means for determining the urgency and setting the priority" is a function for evaluating the importance of emails based on extracted keywords and determining the priority of responses.
[1719] "Means to display in a separate tab" is a function that uses different tabs on the screen to display high priority emails separately from other emails.
[1720] The "means for selecting an answer template and generating a draft answer" is a function for selecting an appropriate answer from pre-prepared answer templates and creating a draft answer based on that.
[1721] A "generative AI model" is an artificial intelligence system that uses machine learning technology to understand the content of an email and automatically generate an appropriate response.
[1722] The "means for creating email candidates and displaying them to the user" is a function for creating a draft of a reply email based on the generated answer proposal and presenting it to the user.
[1723] This invention is a system for automating and streamlining email correspondence operations at logistics centers and the like. This system involves processing by a mail server, a server, terminals, and users. Specific embodiments of the invention will be described below.
[1724] Hardware and Software Configuration
[1725] Hardware: Servers and smartphones
[1726] Software: Python and imaplib (for receiving emails), some_ai_library (AI model library)
[1727] Retrieving emails
[1728] The server periodically retrieves new, unread emails from the mail server. To do this, it uses imaplib to connect to the mail server based on the user's authentication information. This process pulls the latest emails into the system.
[1729] Email analysis
[1730] The server reads the subject and body of the received email and extracts specific keywords, such as "urgent" or "today," which indicate the level of urgency. The extracted keywords are used in the next processing step.
[1731] Setting Priorities
[1732] The server determines the urgency of the email based on the extracted keywords and sets a priority. If the keyword "urgent" is included, the urgency is determined to be "high." This allows the user to respond quickly.
[1733] Displaying Priorities
[1734] The device displays emails with a set priority in a separate tab to draw the user's attention, allowing them to respond quickly to important emails.
[1735] Generate answer suggestions
[1736] The server selects an appropriate answer template based on the extracted keywords. It then uses a generative AI model to automatically generate answer suggestions. For example, if the keyword "urgent" is included, the following answer suggestions are generated:
[1737] "We will look into this matter and respond as soon as possible. Please let us know if you have any questions."
[1738] Generate email suggestions
[1739] The server creates email suggestions based on the generated answer proposals and displays them on the terminal. The user can check them, modify them as necessary, and then send them.
[1740] Examples of prompt statements
[1741] As a specific user operation, when a manager of a logistics center checks new emails, the following prompt sentence can be considered:
[1742] Example prompt sentence:
[1743] 1. "Log in and check for new unread emails"
[1744] 2. "If the subject line contains 'urgent', generate an urgent response."
[1745] 3. "Show the proposed answer to the user, revise it as needed, and submit it."
[1746] This invention improves the efficiency of operations at distribution centers, significantly reduces the time and effort required for users to respond to e-mails, and enables e-mails to be processed quickly and accurately.
[1747] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1748] Step 1:
[1749] Retrieving emails
[1750] The server retrieves new unread emails from the mail server. Specifically, it uses imaplib to connect to the mail server using the user's authentication information. The input is the user's email account information (email address, password), and the output is a list of new unread emails. This list includes the subject and body of the email.
[1751] Step 2:
[1752] Email analysis
[1753] The server analyzes the subject and body of the retrieved emails to extract specific keywords. The input is a list of new, unread emails, and the output is a list of extracted keywords. Specifically, it performs text analysis to detect keywords such as "urgent" and "today."
[1754] Step 3:
[1755] Setting Priorities
[1756] The server determines the urgency of emails based on the extracted keywords and sets priorities. The input is a list of extracted keywords, and the output is the priority of each email. Specifically, emails containing the keyword "urgent" are determined to be "high" and their priority is set.
[1757] Step 4:
[1758] Displaying Priorities
[1759] The terminal displays emails with a set priority in a separate tab. The input is the priority of each email, and the output is the email interface displayed to the user. Specifically, emails with a high priority are displayed in a prominent tab to draw the user's attention.
[1760] Step 5:
[1761] Generate answer suggestions
[1762] The server selects an appropriate answer template based on the extracted keywords and automatically generates appropriate answer suggestions using a generative AI model. The input is the answer template corresponding to the extracted keywords, and the output is the answer suggestions. Specifically, the generative AI model is executed, and if "urgent" is included, an answer suggestion for urgent response is generated.
[1763] Step 6:
[1764] Generate email suggestions
[1765] The server creates a candidate email based on the generated answer plan and displays it on the terminal. The input is the generated answer plan, and the output is the candidate email displayed to the user. Specifically, the server sets the subject, body, and recipient based on the answer plan and creates a draft of the email.
[1766] Step 7:
[1767] User confirmation and submission
[1768] The user checks the email candidates displayed on the terminal, makes corrections as necessary, and then sends them. The input is the generated email candidates, and the output is the final email corrected by the user. In concrete terms, the user checks the displayed email candidates, makes corrections, and clicks the send button to send the final email.
[1769] Through the above steps, a system is constructed in which the server, terminals, and users work together to efficiently process and respond to unread emails.
[1770] 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.
[1771] This invention is a system that retrieves new, unread emails from a mail server, analyzes them, and automatically generates appropriate responses. It also incorporates an emotion engine that recognizes the user's emotions, allowing it to adjust the priority of emails and the content of responses. This significantly reduces the effort required for users to respond to emails, and enables them to handle emails appropriately according to their emotions. This system is operated by the server, terminals, and users.
[1772] Overall system overview
[1773] Server: Receives emails, analyzes them, sets priorities, selects answer templates, generates answer suggestions, recognizes user emotions, and adjusts priorities and answers.
[1774] Terminal: Displays generated email candidates, displays high-priority emails in a separate tab, displays emotion recognition results, and allows the user to confirm, correct, and send.
[1775] User: Check the generated email suggestions, make corrections and enter sentiments, and send.
[1776] Email capture and analysis
[1777] The server periodically retrieves new unread emails from the mail server, and this process ensures that the latest emails are included in the system.
[1778] Read the subject and body of the acquired email and extract specific keywords ("Urgent", "By today", "Answers", "Summit").
[1779] Displaying Priorities
[1780] The server determines the urgency of the email based on the extracted keywords and classifies the priority as "high," "medium," or "low."
[1781] Emails with a high urgency level will be displayed in a separate tab on the device.
[1782] Emotion recognition and priority adjustment
[1783] The server analyzes user input (text, voice, facial expressions, etc.) in real time and recognizes emotions using an emotion engine.
[1784] Reprioritizing emails based on the perceived emotion: for example, if a user is feeling "stressed," emails related to that user will be prioritized higher.
[1785] Generate and refine answer proposals
[1786] The server selects an appropriate answer template based on the extracted keywords and the recognized user sentiment.
[1787] Based on the selected template, a specific answer proposal is generated. The placeholders in the template are replaced based on the information in the email body and the user's sentiment to create the answer proposal.
[1788] Generate email suggestions
[1789] The server creates a candidate email based on the generated response, including addressing, subject (e.g., adding "Re:"), and constructing the body of the email.
[1790] The device displays the created email suggestions to the user, along with the emotion recognition results, which the user can review and modify.
[1791] Specific examples
[1792] 1. Get new emails
[1793] The server retrieves a new unread email from the mail server with the subject "Confirm CSO report (urgent)".
[1794] 2. Email Analysis
[1795] The server analyzes the email body and subject and extracts the keyword "urgent."
[1796] 3. Setting priorities
[1797] The server determines that the urgency of the email is "high" and sets the priority of this email to high.
[1798] 4. Emotion recognition
[1799] The server recognizes the user's emotions from the input text, voice, or facial expressions. In this case, it recognizes that the user is feeling "stressed."
[1800] 5. Adjust priorities
[1801] The server further prioritizes related emails based on the perceived emotion "stress."
[1802] 6. Generating Answer Suggestions
[1803] The server selects an answer template that includes "urgent" and generates answer suggestions based on the user's sentiment:
[1804] We will investigate this matter as soon as possible and respond accordingly. If you have any questions, please let us know. We will add expressions to reduce user stress.
[1805] 7. Create email suggestions
[1806] The server uses the above answer ideas to create email candidates and displays them on the terminal.
[1807] 8. User Confirmation and Submission
[1808] The user checks the displayed email candidates, corrects them as necessary, and then clicks the send button to send the email.
[1809] In this way, the system of the present invention can respond to users' emails in an efficient and emotionally sensitive manner.
[1810] The processing flow will be explained below.
[1811] Step 1: Check your email
[1812] The server periodically accesses the mail server to check for new unread emails. If there are any new emails, it retrieves them.
[1813] Step 2: Importing emails
[1814] The server reads the subject and body of the received email, processes the email's character encoding appropriately, and treats it as text data.
[1815] Step 3: Keyword extraction
[1816] The server uses natural language processing libraries and regular expressions to detect specific keywords (such as "urgent," "by today," "Answers," and "summit") in the subject and body of the email, and records the detected keywords.
[1817] Step 4: Determine the level of urgency
[1818] The server determines the urgency of the email based on the extracted keywords. For example, if the email contains keywords such as "urgent" or "by today," the server determines the urgency as "high."
[1819] Step 5: Setting priorities
[1820] The server assigns a priority to each email based on its urgency, categorizing it as "high," "medium," or "low," and records the priority setting in a database.
[1821] Step 6: Viewing Priorities
[1822] The device will display emails set as "high" priority in a separate tab, allowing users to quickly check important emails.
[1823] Step 7: Emotion Recognition
[1824] The server collects user input (text, voice, facial expressions, etc.) in real time and uses an emotion engine to recognize emotions, for example by analyzing words and phrases in the text, the tone of voice, and facial features.
[1825] Step 8: Adjust priorities based on emotions
[1826] The server re-prioritizes emails based on the user's emotions as determined by the emotion engine. For example, if a user is recognized as feeling "stressed," emails related to that user will be prioritized higher.
[1827] Step 9: Select a template
[1828] The server selects an appropriate answer template based on the extracted keywords and the user's recognized emotions. For example, if the keyword "urgent" is detected and the user is feeling "stressed," the server applies the appropriate template.
[1829] Step 10: Generate answer suggestions
[1830] The server generates a specific answer proposal based on the selected template, replacing placeholders in the template based on the information in the email body and the user's sentiment to create the answer proposal.
[1831] Step 11: Generate email candidates
[1832] The server creates a candidate email based on the generated response, including addressing, subject (e.g., adding "Re:"), and constructing the body of the email.
[1833] Step 12: View email suggestions
[1834] The device displays the created email suggestions to the user, along with the emotion recognition results, which the user can review and modify.
[1835] Step 13: Sending an email
[1836] The user checks the email suggestions, makes corrections as necessary, and then clicks the send button.
[1837] The server actually sends the confirmed email according to the user's operation.
[1838] The above steps involve specific processing, from receiving and analyzing emails, to generating and sending reply suggestions, as well as recognizing and reflecting the user's emotions. This allows for efficient and emotionally sensitive responses to users' emails.
[1839] Example 2
[1840] 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."
[1841] Conventional email management systems lack the functionality to enable users to respond quickly and effectively to large volumes of email, and have particular issues with prioritizing urgent emails and automatically responding to them. Furthermore, they lack the ability to respond in a way that takes into account the user's emotions, and there is a need for a method to improve stressful work environments.
[1842] 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.
[1843] In this invention, the server includes means for acquiring new, unread emails from the email server, means for analyzing the subject and text of the acquired emails and extracting specific keywords, means for determining the urgency of the emails based on the extracted keywords and setting priorities, means for analyzing user input and recognizing emotions, means for adjusting the priorities of the emails based on the recognized emotions, means for selecting an appropriate answer template based on the extracted keywords and the recognized emotions and generating answer proposals, and means for creating email candidates based on the generated answer proposals and displaying them to the user. This allows users to respond to large volumes of emails quickly and effectively, and enables email processing that takes emotions into consideration.
[1844] A "mail server" is a server system for managing the sending and receiving of e-mail.
[1845] "New unread email" refers to newly received email that has not yet been opened by the user.
[1846] The "subject" is text information that is displayed as the title of the email.
[1847] The "body" is text information that describes the main content of the email.
[1848] "Analysis" refers to the process of automatically reading the contents of an email and extracting meaning and information.
[1849] "Keywords" are words or phrases that are considered to be particularly important in the content of an email.
[1850] "Urgency" is a measure of how quickly an email should be responded to.
[1851] "Priority" is a criterion for determining which of a large number of emails should be processed first.
[1852] A "separate tab" is a separate section displayed within the same application window.
[1853] "User" refers to the person who actually uses this system.
[1854] "Input" refers to the act of a user providing information such as text, voice, or facial expression to a system.
[1855] "Emotions" refer to the feelings and psychological state that users experience when using a system.
[1856] "Emotion recognition" means that the system analyzes and understands the user's feelings and psychological state.
[1857] A "reply template" is a pre-defined standard reply to an email.
[1858] A "proposed answer" is a suggested sentence generated as a specific reply to an email.
[1859] A "candidate email" is an email that is prepared for sending and is based on the generated answer plan.
[1860] "Display" refers to the system outputting the processing results to the user's screen.
[1861] This system retrieves new, unread emails from a mail server, analyzes their contents, and automatically generates appropriate responses. Furthermore, by combining it with an emotion engine that recognizes the user's emotions, it has the ability to adjust the priority of emails and the content of responses.
[1862] System configuration
[1863] This system consists of three elements: a server, a terminal, and a user.
[1864] server
[1865] The server consists of the following hardware and software:
[1866] Hardware: Server computer (e.g., x86 architecture processor, 16GB or more memory, SSD storage, etc.)
[1867] Software: IMAP protocol library for email retrieval, natural language processing (NLP) library (such as Python's NLTK or SpaCy), emotion recognition engine (such as Watson Tone Analyzer or Microsoft Azure's Emotion API)
[1868] Terminal
[1869] A terminal is a device that is directly operated by a user (e.g., a PC, a smartphone, or a tablet) and includes the following software:
[1870] Hardware: Mouse, keyboard, display, microphone, camera, etc.
[1871] Software: Web browser, email client software, dedicated applications
[1872] User
[1873] A User is an individual who uses the system to review, modify, and send emails. A User provides the following input:
[1874] Input data: text input, voice input, facial expression data
[1875] System Functions and Operation
[1876] The main functions of this system and the specific processes involved will be explained below.
[1877] Get new emails
[1878] The server accesses the mail server at regular intervals to retrieve new, unread emails. This process uses the IMAP protocol. For example, it retrieves new emails with the subject "Confirmation of CSO report (urgent)."
[1879] Email analysis
[1880] The server analyzes the subject and body of the email. It uses a natural language processing library (Python's NLTK or SpaCy) to extract specific keywords. For example, the keyword "urgent" can be found in "Subject: Confirm CSO report (urgent)."
[1881] Keyword extraction and prioritization
[1882] The server determines the urgency of the email based on the extracted keywords and classifies the priority as "high," "medium," or "low." For example, an email containing the keyword "urgent" is set to "high."
[1883] emotion recognition
[1884] The server analyzes the user's input (text, voice, facial expressions, etc.) and uses an emotion recognition engine to recognize the user's emotions. For example, if the user is feeling "stressed," that emotion is recognized.
[1885] Priority Adjustment
[1886] The server reprioritizes emails based on the perceived emotion: for example, if a user is feeling "stressed," emails related to that user will be given a higher priority.
[1887] Generate answer suggestions
[1888] The server selects an appropriate answer template based on the extracted keywords and the recognized sentiment, and generates a specific answer suggestion, such as "We will look into this matter and respond as soon as possible. Please let us know if you have any questions."
[1889] Generate email suggestions
[1890] The server then creates email suggestions based on the generated answer proposals and displays them on the terminal. The user can then check them and make corrections as necessary.
[1891] User confirmation and submission
[1892] The user checks the email candidates displayed on the terminal, makes corrections as necessary, and then clicks the send button to send the email.
[1893] Specific examples
[1894] Specific examples are shown below.
[1895] 1. Get new emails
[1896] The server retrieves a new unread email from the mail server with the subject "Confirm CSO report (urgent)".
[1897] 2. Email Analysis
[1898] The server analyzes the email body and subject and extracts the keyword "urgent."
[1899] 3. Keyword extraction and prioritization
[1900] The server determines the urgency of the email as "high" based on the keyword "urgent."
[1901] 4. Emotion recognition
[1902] The server analyzes the user's input (text, voice, facial expressions, etc.) and recognizes that the user is feeling "stressed."
[1903] 5. Adjust priorities
[1904] The server will further prioritize related emails based on the emotion "stress."
[1905] 6. Generating Answer Suggestions
[1906] The server selects a response template containing "urgent" and generates a response proposal: for example, "We will check and respond to this matter as soon as possible. If you have any questions, please let us know. Don't worry, we will handle it."
[1907] 7. Generate email suggestions
[1908] The server uses the generated answer plan to create email candidates and displays them on the terminal.
[1909] 8. User Confirmation and Submission
[1910] The user checks the displayed email candidates, makes corrections as necessary, and then clicks the send button to send the email.
[1911] Prompt Sentence Examples
[1912] "Please extract the content of emails with the word 'urgent' in the subject line and generate a suggested response."
[1913] "If your users are stressed, prioritize relevant emails."
[1914] "Please explain the process from retrieving new unread emails to generating suggested answers."
[1915] As described above, the system of the present invention can improve the efficiency of users' email correspondence and process emails in a manner that takes emotions into consideration.
[1916] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1917] Step 1: Get new emails
[1918] The server accesses the mail server at regular intervals to obtain new unread mail.
[1919] The input is a list of unread emails from a mail server.
[1920] The output is the subject and content data for each unread email.
[1921] Specific behavior: Uses IMAP protocol to check and retrieve unread emails in the "INBOX" folder. For example, unread emails with the subject "Confirm CSO report (urgent)".
[1922] Step 2: Analyzing the email
[1923] The server analyzes the subject and body of the email and extracts specific keywords.
[1924] The input is the subject and body of each unread email obtained in step 1.
[1925] The output is a list of extracted keywords.
[1926] Specific behavior: Using a natural language processing (NLP) library, the email content is analyzed and keywords such as "urgent" and "by today" are extracted. For example, the keyword "urgent" is identified from the email title "Confirm CSO report (urgent)."
[1927] Step 3: Keyword extraction and prioritization
[1928] The server determines the urgency of the email based on the extracted keywords and classifies the priority as "high," "medium," or "low."
[1929] The input is the keyword list extracted in step 2.
[1930] The output is the priority of the email (high, medium, low).
[1931] Specific behavior: Refer to a pre-defined keyword list, and if "urgent" is included, classify it as "High." As a result, an email with the subject "Confirm CSO report (urgent)" will be set as "High."
[1932] Step 4: Emotion Recognition
[1933] The server analyzes the user's input (text, voice, facial expressions, etc.) and recognizes the user's emotions using an emotion recognition engine.
[1934] The input can be text, voice, or facial expression data from the user.
[1935] The output is the recognized user emotion label (e.g., stress, joy, surprise).
[1936] Specific operation: Text and voice data is analyzed in real time using Watson Tone Analyzer, Microsoft Azure's Emotion API, etc. For example, consider the case where a user is recognized as feeling "stressed."
[1937] Step 5: Adjust priorities
[1938] The server reprioritizes emails based on the perceived sentiment.
[1939] The inputs are the emotion labels recognized in step 4 and the priorities set in step 3.
[1940] The output is the adjusted priority of the email.
[1941] Specific behavior: If a user is feeling "stressed," emails related to that user will be given a higher priority. For example, emails set to "high" will be re-prioritized to "very high."
[1942] Step 6: Generate answer suggestions
[1943] The server selects an appropriate answer template based on the extracted keywords and the recognized emotions, and generates specific answer suggestions.
[1944] The inputs are the keywords extracted in step 2 and the emotion labels recognized in step 4.
[1945] The output is the generated answer proposal.
[1946] Specific behavior: Select the best answer from the answer templates and use the generative AI model to generate a specific sentence, such as "We will look into this matter and respond as soon as possible. Please let us know if you have any questions." To reduce user stress, we add phrases such as "Don't worry, we'll handle it."
[1947] Step 7: Generate email suggestions
[1948] The server constructs email candidates based on the generated answer proposals.
[1949] The input is the proposed answer generated in step 6.
[1950] The output is the created email candidate.
[1951] Specific operation: Constructs the email recipient, subject (adding "Re:"), and body. For example, generates an email candidate with the subject "Re: Confirmation of CSO report (urgent)".
[1952] The terminal displays these email candidates to the user and also presents the results of emotion recognition.
[1953] Step 8: User Confirmation and Submission
[1954] The user checks the email candidates displayed on the terminal and makes corrections as necessary.
[1955] The input is the email candidate generated in step 7.
[1956] The output is the final email as modified by the user.
[1957] Specific operation: The user edits the text as needed and clicks the send button to send the email. For example, the user fine-tunes the text and finally clicks the "Send" button to send the email.
[1958] (Application example 2)
[1959] 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."
[1960] Conventional email response systems have difficulty efficiently processing new, unread emails, and do not adequately prioritize emails based on their urgency or emotions. This often leads to excessive stress for users. The present invention aims to provide a system that efficiently determines the urgency of unread emails, uses emotion recognition to set appropriate priorities, and realizes efficient, emotion-sensitive email responses.
[1961] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for acquiring unread new emails from the email server, means for analyzing the subject and body of the acquired emails and extracting specific keywords, means for determining the urgency of the emails based on the extracted keywords and user emotion recognition and setting a priority level, means for displaying prioritized emails in a separate tab, means for selecting an appropriate answer template based on the extracted keywords and emotion recognition and generating answer proposals, and means for creating email candidates based on the generated answer proposals and displaying them to the user. This makes it possible to significantly improve the efficiency of email responses while reducing user stress.
[1962] A "mail server" is a server for sending and receiving emails via a network such as the Internet.
[1963] "New unread email" is the most recent email that arrived in the user's inbox that they have not yet read.
[1964] "Means of acquisition" refers to the function for extracting data from the mail server and importing it into the system.
[1965] The "subject" refers to the title of the email, and is text that briefly describes the content of the email.
[1966] The "body" is the part of the email where the main content is written, and is text that includes detailed information about the message.
[1967] "Means for analysis" refers to the function of investigating and evaluating the contents of the acquired emails and extracting useful information.
[1968] "Specific keywords" are important words or phrases that are extracted when determining the urgency and content of an email.
[1969] "Means for extraction" is a function for extracting necessary keywords from the analyzed information.
[1970] "Emotion recognition" is a technology that reads emotions from a user's text, voice, facial expressions, etc.
[1971] "Urgency" is a measure of the promptness and importance of the response required by the email.
[1972] The "means for setting priorities" is a function that determines the order in which emails should be processed based on urgency and emotional recognition.
[1973] "Means to display in a separate tab" is a function for visually displaying high priority emails separately from other emails.
[1974] A "reply template" is a pre-defined text template containing common reply content.
[1975] The "means for generating answer suggestions" is a function that automatically creates specific reply content based on the extracted keywords and the results of emotion recognition.
[1976] The "means for creating email candidates" is a function for creating sendable emails from the generated answer proposals.
[1977] "Means for displaying to the user" is a function that displays the generated email candidates on the user's screen, allowing them to check and modify them.
[1978] This invention is a system that retrieves new, unread emails from a mail server, analyzes them, and determines the urgency of each email based on extracted keywords and user emotion recognition, and sets priorities. This system aims to improve the efficiency of customer inquiries and reduce user stress, particularly in content distribution services.
[1979] Hardware and software used
[1980] Server: Retrieves emails from the email server, analyzes them, extracts keywords, determines urgency, recognizes emotions, selects answer templates, generates answer suggestions, and creates email candidates.
[1981] On the device: Generated email candidates are displayed, high-priority emails are displayed in a separate tab, emotion recognition results are displayed, and the user can confirm, correct, and send the email.
[1982] Emotion engine: Software that analyzes user input and recognizes emotions, specifically using emotion analysis tools like TextBlob.
[1983] System Configuration and Operation
[1984] The server periodically retrieves new, unread emails from the email server. It analyzes the subject and body of the retrieved emails and extracts specific keywords. Keywords include "urgent" and "by today."
[1985] The server determines the urgency of the email based on the extracted keywords and emotion recognition by the emotion engine, and sets the priority. For example, if the keyword contains "urgent," the server sets the urgency of the email high. Also, if the user is feeling stressed, the server further increases the priority of related emails.
[1986] Priority-set emails are displayed in a separate tab on the device, allowing users to immediately check emails with high urgency.
[1987] The server selects an appropriate answer template based on the extracted keywords and the result of emotion recognition, and generates a suggested answer. Based on the generated suggested answer, email candidates are created and displayed on the terminal.
[1988] The user can then check the displayed email suggestions, modify them as necessary, and send them. This process reduces stress for the user and enables efficient email correspondence.
[1989] Specific examples
[1990] For example, consider the case where the server retrieves a new unread email from the mail server with the subject "Feedback: Regarding service improvements," which contains the phrase "Please respond as soon as possible."
[1991] 1. The server analyzes this email and extracts the keyword "urgent."
[1992] 2. The emotion engine analyzes the email text and recognizes that the user is feeling stressed.
[1993] 3. The server determines that the email is urgent and sets a priority.
[1994] 4. High priority emails will be displayed in a separate tab on your device.
[1995] 5. The server selects an answer template that includes "urgent" and generates the following answer: "We apologize for the stress this may cause. We will respond as soon as possible."
[1996] 6. A suggested email will be created based on this answer and displayed on your device.
[1997] 7. The user confirms and corrects this and submits it.
[1998] Prompt Sentence Examples
[1999] Subject: Feedback: How can we improve our service?
[2000] Main text:
[2001] Thank you for your help. I noticed the following issues while using the service.
[2002] I would appreciate it if you could respond as soon as possible. I have included "urgent" in the subject line, so I would be grateful if you could deal with it as soon as possible.
[2003] Long loading times
[2004] The screen layout is messed up
[2005] This will reduce stress for users while significantly improving the efficiency of responding to inquiries.
[2006] The above description of the "Mode for Carrying Out the Invention" is specific and detailed, and can serve as a reference for others to accurately understand and practice the present invention.
[2007] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[2008] Step 1:
[2009] Get new emails from the mail server
[2010] The server connects to the mail server and retrieves new, unread emails. To do this, it uses the IMAP protocol or similar to retrieve data from the mail server. Specifically, the server sends a query to the mail server, retrieves the list of unread emails, and stores the contents of those emails on the server.
[2011] Input: Mail server connection information, authentication information
[2012] Output: List of new unread emails and the contents of each email
[2013] Step 2:
[2014] Analyze email subjects and text to extract specific keywords
[2015] The server analyzes the subject and body of the email using a text analysis tool (e.g., a natural language processing library) to extract specific keywords, such as "urgent" and "by today."
[2016] Input: Subject and body of new unread email
[2017] Output: List of extracted keywords per email
[2018] Step 3:
[2019] Recognizing user emotions using an emotion engine
[2020] The server receives user input (e.g., text, voice, facial expression, etc.) and analyzes the emotion using emotion engines such as TextBlob. Specifically, the email body and the user's response are input into an emotion model to determine whether the emotion is positive or negative.
[2021] Input: User input data (text, voice, facial expressions, etc.)
[2022] Output: User sentiment analysis results (negativity, positivity, etc.)
[2023] Step 4:
[2024] Determine the urgency of emails and set priorities
[2025] The server determines the urgency of the email and sets a priority based on the keywords extracted in the previous step and the results of emotion recognition. Specifically, if the keyword "urgent" is used or if the user is feeling strong stress, the urgency is set high and the priority is classified as high.
[2026] Input: List of extracted keywords, sentiment analysis results
[2027] Output: Urgency and priority of the email
[2028] Step 5:
[2029] Display high priority emails in a separate tab
[2030] Based on the priority information received from the server, the terminal displays emails that have been set to a high priority in a separate tab so that the user can check them immediately.
[2031] Input: Urgency and priority of the email
[2032] Output: High priority emails displayed in a separate tab
[2033] Step 6:
[2034] Select the appropriate answer template and generate answer suggestions
[2035] The server selects an appropriate answer template based on the extracted keywords and the results of emotion recognition. A specific answer is generated based on the selected template. For example, if the message is "urgent," the server uses the template "We will respond as soon as possible" and adds expressions that take the user's emotions into consideration.
[2036] Input: Extracted keywords, sentiment analysis results
[2037] Output: Generated answer ideas
[2038] Step 7:
[2039] Create email suggestions and display them to the user
[2040] The server creates email suggestions based on the generated answer proposals and presents them to the user through a user interface. The user can check them and make corrections as necessary.
[2041] Input: Generated answer ideas
[2042] Output: Email suggestions displayed in the user interface
[2043] Step 8:
[2044] User confirmation and submission
[2045] The user checks the displayed email candidates, makes any necessary corrections, and then clicks the send button to send the email. The server then actually sends the email content that the user has confirmed.
[2046] Input: User-corrected email suggestions
[2047] Output: Email sent
[2048] 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.
[2049] 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.
[2050] 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.
[2051] 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.
[2052] 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.
[2053] 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.
[2054] 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).
[2055] 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.
[2056] 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."
[2057] 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.
[2058] 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).
[2059] 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.
[2060] 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.
[2061] 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.
[2062] 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.
[2063] 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.
[2064] 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.
[2065] 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.
[2066] 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.
[2067] 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.
[2068] 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.
[2069] The following is further disclosed regarding the above embodiment.
[2070] (Claim 1)
[2071] A means for retrieving new unread emails from a mail server;
[2072] A means for analyzing the subject and body of the acquired email and extracting specific keywords;
[2073] A means for determining the urgency of emails based on the extracted keywords and setting priorities;
[2074] A way to display prioritized emails in a separate tab,
[2075] a means for selecting an appropriate answer template based on the extracted keywords and generating answer suggestions;
[2076] The system includes means for generating and displaying email suggestions to the user based on the generated answer suggestions.
[2077] (Claim 2)
[2078] 2. The system according to claim 1, wherein the urgency of an email containing the keywords "urgent" and "by today" is determined as the specific keywords.
[2079] (Claim 3)
[2080] The system of claim 1, wherein the system generates answer suggestions including the keywords "Answers" and "summit" as the specific keywords.
[2081] "Example 1"
[2082] (Claim 1)
[2083] A means for retrieving new unread emails from a mail server;
[2084] A means for analyzing the subject and body of the acquired email and extracting specific keywords;
[2085] A means for determining the urgency of emails based on the extracted keywords and setting priorities;
[2086] A way to display prioritized emails in a separate tab,
[2087] a means for selecting an appropriate answer template based on the extracted keywords and generating answer suggestions;
[2088] a means for generating email candidates based on the generated answer proposals and displaying them to the user;
[2089] The system includes a means for the user to review the proposed email and send it after correction.
[2090] (Claim 2)
[2091] 2. The system according to claim 1, wherein the urgency of an email containing the keywords "urgent" and "by today" is determined as the specific keywords.
[2092] (Claim 3)
[2093] The system of claim 1, wherein the system generates answer suggestions including the keywords "Answers" and "summit" as the specific keywords.
[2094] "Application Example 1"
[2095] (Claim 1)
[2096] A means for retrieving new unread emails from a mail server;
[2097] A means for analyzing the subject and body of the acquired email and extracting specific keywords;
[2098] A means for determining the urgency of emails based on the extracted keywords and setting priorities;
[2099] A way to display prioritized emails in a separate tab,
[2100] a means for selecting an appropriate answer template based on the extracted keywords and generating answer suggestions;
[2101] A means for automatically generating appropriate answer proposals using a generative AI model;
[2102] The system includes means for generating and displaying email suggestions to the user based on the generated answer suggestions.
[2103] (Claim 2)
[2104] 2. The system according to claim 1, wherein the urgency of an email containing the keywords "urgent" and "by today" is determined as the specific keywords.
[2105] (Claim 3)
[2106] The system of claim 1, wherein the system generates answer suggestions including the keywords "Answers" and "summit" as the specific keywords.
[2107] "Example 2: Combining Emotion Engines"
[2108] (Claim 1)
[2109] A means for retrieving new unread emails from a mail server;
[2110] A means for analyzing the subject and body of the acquired email and extracting specific keywords;
[2111] A means for determining the urgency of emails based on the extracted keywords and setting priorities;
[2112] A way to display prioritized emails in a separate tab,
[2113] means for analyzing user input and recognizing emotions;
[2114] A means to adjust email priorities based on perceived sentiment; and
[2115] a means for selecting an appropriate answer template based on the extracted keywords and the recognized sentiments and generating answer suggestions;
[2116] The system includes means for generating and displaying email suggestions to the user based on the generated answer suggestions.
[2117] (Claim 2)
[2118] 2. The system according to claim 1, wherein the urgency of an email containing the keywords "urgent" and "by today" is determined as the specific keywords.
[2119] (Claim 3)
[2120] The system of claim 1, wherein the system generates answer suggestions including the keywords "Answers" and "summit" as the specific keywords.
[2121] "Application example 2 when combining emotion engines"
[2122] (Claim 1)
[2123] A means for retrieving new unread emails from a mail server;
[2124] A means for analyzing the subject and body of the acquired email and extracting specific keywords;
[2125] A means for determining the urgency of emails and setting priorities based on the extracted keywords and user emotion recognition;
[2126] A way to display prioritized emails in a separate tab,
[2127] a means for selecting an appropriate answer template based on the extracted keywords and emotion recognition and generating answer suggestions;
[2128] The system includes a means for generating email candidates based on the generated answer proposals and displaying them to the user.
[2129] (Claim 2)
[2130] 2. The system according to claim 1, wherein the urgency of an email containing the keywords "urgent" and "by today" is determined as the specific keywords.
[2131] (Claim 3)
[2132] The system according to claim 1, wherein answer suggestions are generated that include the keywords "specific terms" and "specific events" as specific keywords. [Explanation of symbols]
[2133] 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. A means for retrieving new unread emails from a mail server; A means for analyzing the subject and body of the acquired email and extracting specific keywords; A means for determining the urgency of emails based on the extracted keywords and setting priorities; A way to display prioritized emails in a separate tab, a means for selecting an appropriate answer template based on the extracted keywords and generating answer suggestions; The system includes means for generating and displaying email suggestions to the user based on the generated answer suggestions.
2. 2. The system according to claim 1, wherein the urgency of an email containing the keywords "urgent" and "by today" is determined.
3. The system according to claim 1 , wherein the system generates answer suggestions including the keywords "Answers" and "summit" as the specific keywords.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A