System
The system addresses the challenge of inefficient employee information retrieval by using natural language processing to quickly and accurately provide employee details, enhancing communication efficiency.
Patent Information
- Application Number
- JP2024140351
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-08-21
- Publication Date
- 2026-03-06
AI Technical Summary
Conventional systems face challenges in quickly and accurately identifying employee responsibilities and departments within large companies, leading to inefficiencies in information searches and hindered communication.
A system that receives natural language queries, uses a natural language processing engine to analyze and retrieve employee information from a database, generates responses, and displays them on a terminal, while ensuring user authentication and access control.
Enables fast and accurate retrieval of internal company information, improving communication efficiency by quickly providing relevant employee details.
Smart Images

Figure 2026037326000001_ABST
Abstract
Description
[Technical Field]
[0001] The technology of the present disclosure relates to a system. [Background technology]
[0002] Patent document 1 discloses a persona chatbot control method performed by at least one processor, the method including the steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to a description of the chatbot character, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Publication No. 2022-180282 Summary of the Invention [Problem to be solved by the invention]
[0004] In conventional in-house work, it has been difficult for employees to quickly understand the responsibilities and departments of other employees. Particularly in companies with a large number of employees, there are multiple departments with similar names and job titles, and it takes time and effort to find out who is responsible for what tasks. This reduces the efficiency of information searches within the company, hindering communication and the smooth progress of work. Therefore, there is a need for a system that can quickly and accurately search for internal human resources information and provide users with appropriate information. [Means for solving the problem]
[0005] The present invention provides a system that receives a natural language query entered by a user into a terminal, analyzes the query, and retrieves appropriate information from an employee database. The system includes means for generating a response message based on the retrieved information and displaying the message on the user's terminal. The present invention also includes means for using a natural language processing engine to analyze the query and means for performing user authentication and granting access only to authenticated users, thereby enabling users to quickly and accurately retrieve employee information. This improves the efficiency of information searches within a company and helps business operations proceed smoothly.
[0006] A "user" is an individual who uses the system to search for employee information.
[0007] A "terminal" is a device used by a user to input queries to the system and receive responses. Examples include a personal computer or a smartphone.
[0008] A "natural language query" is a question or request written in human language that a user types into a terminal.
[0009] The "means for receiving a query" refers to a method for acquiring a natural language query entered by a user into the system.
[0010] The "means for parsing a query" refers to the process of interpreting a received natural language query and converting it into a searchable format.
[0011] An "employee database" is a collection of data that stores information about employees, including their names, departments, positions, and responsibilities.
[0012] The "means of obtaining information" is a method for searching and obtaining the necessary information from the employee database based on the analyzed query.
[0013] The "means for generating a response message" is a method for creating a message to be conveyed to the user based on the acquired information.
[0014] The "means for displaying the response message" is a method for displaying the generated response message on the user's terminal.
[0015] A "natural language processing engine" is software that analyzes natural language queries entered by users and understands their intent.
[0016] "User authentication" is the process of verifying that a user accessing a system is an authorized person. [Brief explanation of the drawings]
[0017] [Figure 1] 1 is a conceptual diagram showing an example of the configuration of a data processing system according to a first embodiment. [Figure 2] 1 is a conceptual diagram showing an example of main functions of a data processing device and a smart device according to a first embodiment. [Figure 3] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a second embodiment. [Figure 4] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and smart glasses according to a second embodiment. [Figure 5] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a third embodiment. [Figure 6] FIG. 11 is a conceptual diagram showing an example of main functions of a data processing device and a headset-type terminal according to a third embodiment. [Figure 7] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a fourth embodiment. [Figure 8] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and a robot according to a fourth embodiment. [Figure 9] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 10]1 shows an emotion map onto which multiple emotions are mapped. [Figure 11] FIG. 3 is a sequence diagram showing a processing flow of the data processing system according to the first embodiment. [Figure 12] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 1. [Figure 13] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system according to the second embodiment when an emotion engine is combined. [Figure 14] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 2 when an emotion engine is combined. DETAILED DESCRIPTION OF THE INVENTION
[0018] An example of an embodiment of a system according to the technology of the present disclosure will be described below with reference to the accompanying drawings.
[0019] First, the terms used in the following description will be explained.
[0020] In the following embodiments, a coded processor (hereinafter simply referred to as a "processor") may be a single arithmetic device or a combination of multiple arithmetic devices. Furthermore, a processor may be a single type of arithmetic device or a combination of multiple types of arithmetic devices. Examples of arithmetic devices include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), and an APU (Accelerated Processing Unit).
[0021] In the following embodiments, a coded RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a working memory by a processor.
[0022] In the following embodiments, the coded storage is one or more non-volatile storage devices that store various programs, various parameters, etc. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), and magnetic tapes.
[0023] In the following embodiments, a communication I / F (Interface) with a symbol is an interface including a communication processor, an antenna, etc. The communication I / F controls communication between multiple computers. Examples of communication standards applied to the communication I / F include wireless communication standards including 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), Bluetooth (registered trademark), etc.
[0024] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." In other words, "A and / or B" means that it may be only A, only B, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" is also applied when three or more things are expressed connected by "and / or."
[0025] [First embodiment]
[0026] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.
[0027] 1, a data processing system 10 includes a data processing device 12 and a smart device 14. An example of the data processing device 12 is a server.
[0028] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0029] The smart device 14 includes a computer 36, a reception device 38, an output device 40, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The reception device 38, the output device 40, and the camera 42 are also connected to the bus 52.
[0030] The reception device 38 includes a touch panel 38A, a microphone 38B, and the like, and receives user input. The touch panel 38A detects contact with an indicator (for example, a pen or a finger) to receive user input by the touch of the indicator. The microphone 38B detects the user's voice to receive user input by voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the data indicating the user input.
[0031] The output device 40 includes a display 40A and a speaker 40B, and presents data to the user 20 by outputting the data in a form of expression that the user 20 can perceive (for example, audio and / or text). The display 40A displays visible information such as text and images in accordance with instructions from the processor 46. The speaker 40B outputs audio in accordance with instructions from the processor 46. The camera 42 is a compact digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.
[0032] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54.
[0033] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0034] 2, in the data processing device 12, a specific process is performed by the processor 28. A specific processing program 56 is stored in the storage 32. The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific process is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0035] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0036] In the smart device 14, the processor 46 performs the reception output process. The storage 50 stores a reception output program 60. The reception output program 60 is used in conjunction with the specific processing program 56 by the data processing system 10. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0037] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0038] The present invention provides a system for quickly and accurately searching and acquiring employee information. The following describes the specific program processing and examples.
[0039] Overall system flow
[0040] 1. Initial Setup
[0041] The server builds a database of all company employees and stores it in cloud storage.
[0042] The database contains information such as employee names, departments, positions, and responsibilities.
[0043] The server will have appropriate backups and security settings to strengthen data security and access restrictions.
[0044] 2. User Authentication
[0045] The user accesses the system from a terminal and enters their user ID and password on the login screen.
[0046] The terminal transmits the entered authentication information to the server.
[0047] The server checks the authentication information and allows access if it is correct. It also checks the user's privileges and allows only authorized functions to be used.
[0048] 3. Entering and parsing a query
[0049] Users enter natural language queries into the chatbot's interface, for example, "What is the responsibility of Person B in Department A?"
[0050] The terminal receives this query and sends it to the server.
[0051] The server uses a natural language processing engine to analyze the query, extracting keywords, understanding the context, and identifying the information need.
[0052] 4. Searching for data
[0053] The server searches the employee database for relevant information based on the analysis results. For example, it retrieves information about "Mr. B in Department A."
[0054] If the required information is found, the information is acquired and the next step is carried out.
[0055] 5. Generating a Response Message
[0056] The server generates a response message to the user based on the information it retrieves. For example, it creates a message that reads, "Mr. B is in charge of customer service."
[0057] 6. Displaying the Response
[0058] The server sends the generated message to the terminal.
[0059] The terminal displays this message on the user interface and presents it in a form that is easy for the user to understand.
[0060] Example
[0061] Example 1: Want to know the responsibilities of employees?
[0062] 1. The user types into the terminal, "What is the responsibility of Mr. B in Department A?"
[0063] 2. The device sends a query to the server.
[0064] 3. The server uses a natural language processing engine to identify "Department A" and "Mr. B" and searches for corresponding information in the employee database.
[0065] 4. The server obtains the search result "Mr. B is in charge of customer service."
[0066] 5. The server generates a response message stating, "Mr. B is in charge of customer service," and sends it to the terminal.
[0067] 6. The terminal displays this message on its user interface.
[0068] Example 2: When you want to know who to talk to
[0069] 1. The user types "Tell me who's in charge of marketing" into the terminal.
[0070] 2. The device sends a query to the server.
[0071] 3. The server analyzes "marketing manager" as a keyword and searches for corresponding information in the employee database.
[0072] 4. The server obtains the relevant information: "Mr. C is in charge of marketing."
[0073] 5. The server generates a response message stating "Mr. C is in charge of marketing" and sends it to the terminal.
[0074] 6. The terminal displays this message on its user interface.
[0075] The system of the present invention quickly and accurately retrieves and displays necessary in-house information based on a simple query input by the user.
[0076] The processing flow will be explained below.
[0077] Step 1:
[0078] A user accesses a terminal and enters a user ID and password to log in to the system.
[0079] Step 2:
[0080] The terminal transmits the input authentication information to the server.
[0081] Step 3:
[0082] The server checks the authentication information sent and allows the user access if it is correct. It also checks the user's authority and limits the functions that can be used.
[0083] Step 4:
[0084] Users enter natural language queries into the chatbot's interface, for example, "What are the responsibilities of Tanaka-san in the marketing department?"
[0085] Step 5:
[0086] The terminal sends this query to the chatbot's system.
[0087] Step 6:
[0088] The server uses a natural language processing engine to analyze the query, extracting keywords like "Marketing Department," "Tanaka-san," and "Responsibilities," and understands the context.
[0089] Step 7:
[0090] The server searches the employee database for the relevant employee information based on the analyzed query. Specifically, it retrieves information about "Mr. Tanaka from the Marketing Department."
[0091] Step 8:
[0092] The server retrieves relevant information from the employee database as a search result. For example, it retrieves information such as "Mr. Tanaka is in charge of market research."
[0093] Step 9:
[0094] The server generates a response message to convey to the user based on this acquired information, for example, "Mr. Tanaka is in charge of market research."
[0095] Step 10:
[0096] The server sends the generated response message to the terminal.
[0097] Step 11:
[0098] The terminal displays this response message on the user interface so that the user can confirm it.
[0099] Step 12:
[0100] The user reviews the displayed information and makes additional inquiries if necessary.
[0101] Example 1
[0102] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0103] Searching and retrieving employee information within a company is extremely important, but conventional systems can delay information retrieval or provide incorrect information. Furthermore, there are issues with insufficient user authentication and inaccuracies in natural language processing, which reduce business efficiency. The present invention aims to solve these problems and enable fast and accurate information retrieval.
[0104] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0105] In this invention, the server includes means for receiving a natural language query entered by a user into a terminal, means for analyzing the query and retrieving appropriate information from a person database based on the analysis result, means for generating a response message based on the retrieved information, means for displaying the response message on the user's terminal, means for receiving and confirming authentication information sent from the terminal, means for checking user authority based on the authentication information and setting the user so that only permitted functions can be used, means for using a natural language processing engine for analyzing the natural language query, and means for sending a response message to the terminal based on the retrieved information. This enables a user to quickly and accurately retrieve necessary internal company information by simply entering a query.
[0106] "User" refers to an individual or organizational member who accesses the system to retrieve information.
[0107] "Terminal" refers to an electronic device used by a user to input queries and display response messages.
[0108] A "query" refers to a question or request in natural language that a user enters into a terminal.
[0109] "Server" refers to a central device that receives queries from users, analyzes them, retrieves appropriate information, generates response messages, and sends them to terminals.
[0110] A "natural language processing engine" refers to software that analyzes input natural language queries and extracts important keywords and context.
[0111] A "person database" refers to a database that stores information about employees, including data such as name, department, position, and responsibilities.
[0112] "Authentication Information" refers to the user ID, password, or other authentication means entered by a user to access the system.
[0113] "User privileges" refer to the range of operations that an authenticated user can perform within the system and the information that they can access.
[0114] "Response message" refers to a message containing an answer that a server generates based on information retrieved in response to a user's query.
[0115] The present invention provides a system for quickly and accurately searching and acquiring employee information. The following describes the processing contents of a specific program and an example of the system.
[0116] Overall system configuration
[0117] This system consists of a user, a terminal, and a server. The user accesses the system through the terminal and inputs a query in natural language. The terminal sends this query to the server. The server analyzes the query, searches a database for the required information, and generates a response message to send to the terminal.
[0118] Specific names of the hardware and software to be used
[0119] 1. Cloud storage: Use Amazon RDS from Amazon Web Services (AWS (registered trademark)).
[0120] 2. Authorization protocol: Use OAuth 2.0.
[0121] 3. Natural language processing engine: Use Google® Dialogflow or Microsoft® LUIS.
[0122] 4. Communication protocol: Use HTTPS.
[0123] Program processing
[0124] The server first builds a database of all company employees and stores it in cloud storage. The database includes information such as employee name, department, position, and responsibilities. The server then performs appropriate backups and security settings to ensure data integrity and restrict access.
[0125] A user accesses the system from a terminal and enters their user ID and password on the login screen. The terminal sends the entered authentication information to the server. The server verifies the received authentication information, and if authentication is successful, issues a session ID to the user and sends it to the terminal. Authenticated users can only use permitted functions.
[0126] The user then inputs a natural language query into the chatbot's interface. For example, "What is the responsibility of Person B in Department A?" The device then sends this query to the server. The server then sends the query to a natural language processing engine, which extracts keywords, understands the context, and identifies information.
[0127] Based on the analysis results, the server specifies the appropriate tables and columns in the employee database and searches for the relevant information using an SQL query. For example, if the analysis results include "Department A" and "Mr. B," the server executes a query such as "SELECT Job Responsibilities FROM Employee Information WHERE Department = 'Department A' AND Name = 'Mr. B'."
[0128] After obtaining the search results, the server generates a response message to the user based on the search results. For example, if the search result is "customer service," the server generates a response message saying, "Mr. B is in charge of customer service."
[0129] The server generates a response message and sends it to the terminal, which displays the message on its user interface to provide the user with the result.
[0130] Specific examples
[0131] Example 1: Want to know the responsibilities of employees?
[0132] 1. The user types into the terminal, "What is the responsibility of Mr. B in Department A?" and sends it.
[0133] 2. The device sends a query to the server.
[0134] 3. The server uses a natural language processing engine to analyze the query and identify "Department A" and "Mr. B."
[0135] 4. The server searches for information about "Mr. B" in the employee database.
[0136] 5. The server obtains the search result "Mr. B is in charge of customer service."
[0137] 6. The server generates a message saying "Mr. B is in charge of customer service" and sends it to the terminal.
[0138] 7. The terminal displays this message on its user interface.
[0139] Example 2: When you want to know who to talk to
[0140] 1. The user types "Tell me who's in charge of marketing" into the terminal and sends it.
[0141] 2. The device sends a query to the server.
[0142] 3. The server analyzes "marketing manager" as a keyword and searches for corresponding information in the employee database.
[0143] 4. The server receives the information that "Mr. C is in charge of marketing."
[0144] 5. The server generates a message saying "Mr. C is in charge of marketing" and sends it to the terminal.
[0145] 6. The terminal displays this message on its user interface.
[0146] In this way, the system of the present invention can quickly and accurately obtain and display necessary information within a company based on a simple query input by the user.
[0147] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0148] Step 1: Initial Setup
[0149] The server first creates the necessary tables to build a database of all employees. The input data includes a dataset of employee names, departments, positions, and responsibilities. The database is stored in cloud storage (such as Amazon RDS). Specific operations include creating tables and importing data using SQL commands. Furthermore, backups and security settings are implemented to strengthen data integrity and access restrictions. This ensures that employee data is stored safely and efficiently.
[0150] Step 2: User authentication
[0151] A user accesses the system from a terminal and a login screen is displayed. The user enters a user ID and password and clicks the submit button. The terminal sends this authentication information to the server via the HTTPS protocol. The server compares the received authentication information with the information in the database, and if authentication is successful, generates a session ID and sends it to the terminal. This authenticates the user and allows them to access the system.
[0152] Step 3: Enter your query
[0153] The user inputs a query in natural language into the chatbot interface. For example, they might type, "Tell me who's in charge of marketing." The input query is confirmed by clicking the send button. The device receives this query and sends it to the server.
[0154] Step 4: Parsing the query
[0155] The server sends the received natural language query to a natural language processing engine such as Google's Dialogflow or Microsoft's LUIS. The input is the natural language query. The natural language processing engine analyzes the query, extracts keywords, understands the context, and generates analysis results. The output is important keywords and contextual information.
[0156] Step 5: Search for data
[0157] The server searches for the relevant information from the employee database based on the analysis results. The analysis results and the employee database are used as input. The server generates an SQL query and executes a query such as "SELECT Job Role FROM Employee Information WHERE Department = 'Marketing'". The output is the relevant employee information.
[0158] Step 6: Generate a response message
[0159] The server generates a response message based on the search results. The search results and a template are used as input. For example, if the search result is "Mr. C is in charge of marketing," the server generates a response message that reads, "Mr. C is in charge of marketing."
[0160] Step 7: Send a response message
[0161] The server sends the generated response message to the terminal. The generated response message and the destination terminal information are used as input. The terminal displays the received message on the chatbot's UI.
[0162] Step 8: View the response
[0163] The device displays the received message on the user's screen. The input is the response message received from the server. The specific operation is to add the message to the chatbot's UI component and display it in a readable format for the user, so that the user can get an answer to their query.
[0164] (Application example 1)
[0165] 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."
[0166] In order to quickly communicate with each department and person in charge within a factory, it is important to quickly and accurately obtain information about the person in charge. However, with conventional systems, it takes time to search and obtain information, making it difficult to achieve efficient communication. There is a need for a system that can solve this problem and improve the efficiency of factory operations.
[0167] 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.
[0168] In this invention, the server includes means for receiving a query in natural language input by a user to a terminal, means for analyzing the query and retrieving appropriate information from a database based on the analysis result, means for generating a response message based on the retrieved information, means for displaying the response message on the user's terminal, and means for the robot to quickly search and retrieve employee information within the factory, thereby enabling quick and accurate information retrieval within the factory.
[0169] A "user" is an entity that operates a terminal to input queries and retrieve information on the system.
[0170] A "terminal" is an electronic device through which a user enters queries and receives responses.
[0171] A "natural language query" is a sentence in which a user enters a question or request in everyday language.
[0172] The "means for analyzing queries" refers to a mechanism that uses a natural language processing engine to understand the input query and issue instructions to the database to retrieve appropriate information.
[0173] A "database" is a collection of data in which information about employees is systematically stored.
[0174] The "means for obtaining information" is a function for searching for corresponding information from a database based on the analyzed query.
[0175] The "means for generating a response message" is a process for creating a message that serves as a response to the user based on the acquired information.
[0176] The "means for displaying on the user's terminal" is a function for displaying the generated response message on the screen of the terminal operated by the user.
[0177] A "robot" is a device that patrols a factory and searches for and acquires information.
[0178] "Factory employee information" refers to information such as the name, department, and role of each employee working in the factory.
[0179] "Quick search and retrieval" is the process of quickly finding information about a specific employee and providing it to the robot as needed.
[0180] The present invention provides a system that allows a robot to quickly and accurately search and acquire employee information within a factory. The following describes the specific program processing content and an example implementation.
[0181] Overall system flow
[0182] 1. Initial Setup
[0183] The server builds a database of all factory employees and stores it in cloud storage.
[0184] The database contains information such as employee names, departments, positions, and responsibilities.
[0185] The server will have appropriate backups and security settings to strengthen data security and access restrictions.
[0186] 2. User Authentication
[0187] The robot accesses the system using a built-in tablet device and enters the user ID and password on the login screen.
[0188] The terminal transmits the entered authentication information to the server.
[0189] The server checks the authentication information and allows access if it is correct. It also checks the user's privileges and allows only authorized functions to be used.
[0190] 3. Entering and parsing a query
[0191] The robot inputs natural language queries into a built-in tablet, such as "Tell me who works in the quality control department."
[0192] The terminal receives this query and sends it to the server.
[0193] The server uses a natural language processing engine to analyze the query, extracting keywords, understanding the context, and identifying the information need.
[0194] 4. Searching for data
[0195] The server searches the employee database for relevant information based on the analysis results. For example, it retrieves information about the "Quality Control Department Personnel."
[0196] If the required information is found, the information is acquired and the next step is carried out.
[0197] 5. Generating a Response Message
[0198] The server generates a response message to the robot based on the information it retrieves. For example, it creates a message such as "Mr. D is in charge of quality control."
[0199] 6. Displaying the Response
[0200] The server sends the generated message to the terminal.
[0201] The terminal displays this message on the user interface and provides it in a form that is easy for the robot to understand.
[0202] Hardware and software used
[0203] Hardware: A tablet device installed on a patrol robot in the factory.
[0204] Software: Python or other server-based programs, natural language analysis engines such as Google Cloud Natural Language API.
[0205] Specific examples
[0206] For example, if a robot needs to find out who is in charge of quality control while on patrol, it can type "Tell me who is in charge of quality control" into the robot's tablet. This query is sent to the server and analyzed by a natural language processing engine. As a result, the relevant information is searched for in the employee database, and a response message is generated saying "Mr. D is in charge of quality control," which is displayed on the tablet.
[0207] Prompt Sentence Examples
[0208] "Tell me who is in charge of quality control."
[0209] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0210] Step 1:
[0211] Initial Setup
[0212] The server builds a database of all employees in the factory and stores it in cloud storage.
[0213] The database contains information such as employee names, departments, positions, and responsibilities.
[0214] Implement backups and security settings to strengthen data security and access restrictions.
[0215] Input: Employee information data
[0216] Output: Database
[0217] Step 2:
[0218] User Authentication
[0219] The robot accesses the system using a built-in tablet device and enters its user ID and password on the login screen.
[0220] The terminal transmits the entered authentication information to the server.
[0221] The server checks the authentication information and allows access if it is correct. It also checks the user's privileges and allows only authorized functions to be used.
[0222] Input: User ID, Password
[0223] Output: Authentication token
[0224] Step 3:
[0225] Entering and parsing a query
[0226] The robot types a natural language query into a tablet, for example, "Who is in the quality control department?"
[0227] The terminal receives this query and sends it to the server.
[0228] The server uses a natural language processing engine to analyze the query, extracting keywords, understanding the context, and identifying the information need.
[0229] Input: Natural language query
[0230] Output: Analysis results
[0231] Step 4:
[0232] Searching for Data
[0233] The server searches the employee database for relevant information based on the analysis results. For example, it retrieves information about the "Quality Control Department Personnel."
[0234] If the required information is found, the information is acquired and the next step is carried out.
[0235] Input: Analysis results
[0236] Output: Employee information
[0237] Step 5:
[0238] Generating a response message
[0239] The server generates a response message to the robot based on the information it retrieves. For example, it creates a message such as "Mr. D is in charge of quality control."
[0240] Input: Employee information
[0241] Output: Response message
[0242] Step 6:
[0243] Viewing the response
[0244] The server sends the generated message to the terminal.
[0245] The terminal displays this message on the user interface and provides it in a form that is easy for the robot to understand.
[0246] Input: Response message
[0247] Output: On-screen display
[0248] 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.
[0249] The present invention provides a system that not only analyzes natural language queries entered by users and searches for employee information, but also has the ability to recognize the user's emotions and adjust response messages based on those emotions.
[0250] Overall system flow
[0251] 1. Initial Setup
[0252] The server builds an employee database containing user authentication information and permission settings and stores it in cloud storage.
[0253] The server configures the emotion engine and sets it up to work with the natural language processing engine.
[0254] The database includes employee names, departments, positions, and responsibilities, as well as the user's emotional history.
[0255] 2. User Authentication
[0256] The user accesses the terminal and enters the user ID and password on the login screen.
[0257] The terminal transmits the input authentication information to the server.
[0258] The server checks the authentication information and allows access if it is correct. It also checks the user's authority and limits the functions that can be used.
[0259] 3. Entering and parsing a query
[0260] A user enters a natural language query into the chatbot's interface, for example, "What is Tanaka-san's schedule for this week?"
[0261] The terminal sends this query to the server.
[0262] The server uses a natural language processing engine to parse the query, which includes extracting keywords, understanding the context, and identifying the required information.
[0263] 4. Emotional Recognition
[0264] The server uses an emotion engine to recognize the user's emotion from the input query, for example, classifying emotions as positive, negative, neutral, etc.
[0265] The recognized emotion is used as a parameter to adjust the response message.
[0266] 5. Searching for data
[0267] The server searches for relevant information from the employee database based on the analysis results and the recognized emotion. For example, it retrieves "Mr. Tanaka's schedule for this week."
[0268] 6. Generating a Response Message
[0269] The server generates a response message to the user based on the information retrieved. For example, when Tanaka's schedule is confirmed, if the emotion is positive, the server will say something like "Tanaka has a fulfilling schedule this week!", and if the emotion is negative, the server will say something like "Tanaka's schedule for this week is as follows. We'll support you if you have any problems."
[0270] 7. Emotional history storage
[0271] The server stores the recognized user emotions in an emotion history database to aid in future response generation.
[0272] The emotion history is used as reference information when the user makes another inquiry.
[0273] 8. Displaying the Response
[0274] The server sends the generated response message to the terminal.
[0275] The terminal displays this response message on the user interface so that the user can confirm it.
[0276] Example
[0277] Example 1: Want to know the responsibilities of employees?
[0278] 1. The user types into the terminal, "What is Sato-san's job in the marketing department?"
[0279] 2. The device sends a query to the server.
[0280] 3. The server uses a natural language processing engine to identify "Marketing Department," "Mr. Sato," and "Job Responsibility," and searches for corresponding information.
[0281] 4. The server uses an emotion engine to recognize the emotion from the user's query (e.g., neutral).
[0282] 5. The server retrieves "Mr. Sato's responsibilities" from the employee database.
[0283] 6. Based on the information obtained, the server generates a neutral response message saying, "Mr. Sato is in charge of market research."
[0284] 7. The server stores the neutral emotion in the user's emotion history.
[0285] 8. The terminal displays the response message on the user interface.
[0286] Example 2: You want to know who to talk to
[0287] 1. The user types into the terminal, "Who should I contact for general system inquiries?"
[0288] 2. The device sends a query to the server.
[0289] 3. The server uses a natural language processing engine to identify "general system," "inquiry," and "consultation" and search for corresponding information.
[0290] 4. The server uses an emotion engine to recognize the emotion from the user's query (e.g., negative).
[0291] 5. The server retrieves the "system manager" information from the employee database.
[0292] 6. Based on the information obtained, the server generates a response message that takes negative emotions into consideration, such as, "For general system inquiries, please contact Yamada-san. If you have any problems, we will solve them immediately."
[0293] 7. The server stores negative emotions in the user's emotion history.
[0294] 8. The terminal displays the response message on the user interface.
[0295] The system of the present invention thus takes into account the user's emotions and generates more flexible and effective response messages, thereby improving the quality and efficiency of in-house communications.
[0296] The processing flow will be explained below.
[0297] Step 1:
[0298] A user accesses a terminal and enters a user ID and password to log in to the system.
[0299] Step 2:
[0300] The terminal transmits the input authentication information to the server.
[0301] Step 3:
[0302] The server checks the authentication information and allows the user access if it is correct. It also checks the user's authority and limits the functions that can be used.
[0303] Step 4:
[0304] Users input natural language queries into the chatbot interface, such as "What is Tanaka's responsibility in the marketing department?"
[0305] Step 5:
[0306] The terminal sends this query to the chatbot's system.
[0307] Step 6:
[0308] The server uses a natural language processing engine to analyze the input query, extracting keywords such as "Marketing Department," "Tanaka-san," and "job responsibilities," and also understands the context.
[0309] Step 7:
[0310] The server uses an emotion engine to recognize the user's emotion from the query, for example, "What is Tanaka-san's responsibility in the marketing department?", and identifies a neutral emotion.
[0311] Step 8:
[0312] The server searches the employee database for relevant information based on the analysis results and the recognized emotion, and retrieves information about "Mr. Tanaka from the Marketing Department."
[0313] Step 9:
[0314] The server obtains the information "Mr. Tanaka is in charge of market research" as a search result.
[0315] Step 10:
[0316] The server generates a tailored response message depending on the recognized emotion, for example, "Mr. Tanaka is in charge of market research" in the case of a neutral emotion.
[0317] Step 11:
[0318] The server stores the identified emotion information in the user's emotion history database so that future queries can refer to the emotion history to provide more appropriate responses.
[0319] Step 12:
[0320] The server sends the generated response message to the terminal.
[0321] Step 13:
[0322] The terminal displays this response message on the user interface so that the user can confirm it.
[0323] Step 14:
[0324] The user reviews the displayed information and makes additional inquiries if necessary.
[0325] Example 2
[0326] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0327] Conventional employee information search systems have difficulty generating responses that take user emotions into account, which hinders the quality of the user experience. Furthermore, there is a lack of a system for quickly providing accurate employee information, which reduces the efficiency of internal communication.
[0328] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[0329] In this invention, the server includes means for receiving a query in natural language entered by a user into a terminal, means for analyzing the query and retrieving appropriate information from an employee database based on the analysis results, means for generating a response message based on the retrieved information, means for displaying the response message on the user's terminal, means for recognizing the user's emotion from the query and adjusting the response message based on the recognized emotion, and means for saving the recognized emotion in an emotion history database. This enables the generation of flexible and effective response messages that take the user's emotion into consideration, thereby enabling the rapid and accurate provision of employee information and improving the quality and efficiency of internal communication.
[0330] "User" refers to a person who utilizes the system to enter queries and obtain information.
[0331] "Terminal" refers to the device on which a user enters a query and checks the response, such as a PC or smartphone.
[0332] A "natural language query" refers to a question or request that a user enters into a system in everyday language.
[0333] A "server" refers to a computer system that analyzes queries, obtains information, generates response messages, recognizes emotions, and so on.
[0334] An "employee database" refers to data storage that stores information such as employee names, departments, positions, and responsibilities.
[0335] A "natural language processing engine" refers to a software component that analyzes natural language queries, extracts keywords, and understands context.
[0336] "Emotion Engine" refers to a software component for recognizing and classifying emotions from user queries.
[0337] "Emotion history database" refers to data storage that stores historical information about a user's emotions.
[0338] "Response message" refers to a text message that is generated based on the acquired information and provided to the user.
[0339] "Authentication information" refers to data such as a user ID and password used to identify a user.
[0340] "Authority settings" refers to setting information that controls the range of operations and functions permitted to a user.
[0341] The present invention provides a system that not only analyzes natural language queries entered by users and searches for employee information, but also has the ability to recognize the user's emotions and adjust response messages based on those emotions.
[0342] First, we will explain the initial setup of this system. The server creates an employee database that includes user authentication information and permission settings, and stores it in cloud storage. This database includes employee names, departments, positions, and responsibilities, as well as user emotion histories. Amazon Web Services (AWS) Relational Database Service (RDS) and Google Cloud SQL are used for storage. The server also configures an emotion engine and a natural language processing engine (NLP engine) and sets them up to work together. SpaCy and Google Cloud Natural Language API are used as the NLP engine, and IBM Watson (registered trademark) Tone Analyzer is used as the emotion engine.
[0343] Next, we will explain the user authentication process. The user accesses the login screen using a device (for example, a PC or smartphone) and enters their user ID and password. The device then sends the entered authentication information to the server. This communication uses the HTTPS protocol to ensure data security. The server checks the authentication information, and if it is valid, authenticates the user through the server's internal authentication system (for example, LDAP or OAuth 2.0), confirms the user's permissions, and limits the functions that can be used.
[0344] Next, we will explain query input and analysis. The user inputs a natural language query, such as "Tanaka-san, what's on the agenda for this week?" into the chatbot's interface (displayed on a web or mobile application). The device sends this query to the server. Again, communication uses an encrypted protocol (e.g., HTTPS). The server then sends the received query to the NLP engine. The NLP engine analyzes the query, extracting keywords (e.g., "Tanaka-san," "what's on the agenda for this week") and understanding the context to identify the required information.
[0345] Next, we will explain emotion recognition. The server passes the parsed query to the emotion engine to recognize the user's emotion. For example, it classifies the emotion as positive, negative, or neutral based on the content and wording of the query. The recognized emotion is then used as an important parameter when generating a response.
[0346] Next, we will explain data retrieval. The server searches for the necessary information from the employee database based on the analysis results of the NLP engine and emotion engine. For example, it retrieves "Mr. Tanaka's schedule for this week." This search uses an SQL query to efficiently extract information from the database.
[0347] Next, we will explain how to generate a response message. The server generates an appropriate response message based on the data obtained through the search and the recognized emotion. For example, if Tanaka's schedule is checked and the emotion is positive, a message such as "Tanaka-san, you have a great schedule this week! Have fun!" is generated. A preset template is used to generate the response message, and text is dynamically generated based on it.
[0348] Furthermore, we will explain how to store emotion history. The server stores the recognized user emotions in an emotion history database. This emotion history is used to generate future responses and improve the user experience.
[0349] Finally, we will explain how to display the response. The server sends the generated response message to the device. The device displays this message on its user interface so that the user can check it. Specifically, it is displayed on the chat screen of a web browser or mobile app.
[0350] Specific examples include the following:
[0351] Example 1: Want to know the responsibilities of employees?
[0352] "What is Sato-san's responsibility in the marketing department?"
[0353] Example 2: You want to know who to talk to
[0354] "Who should I contact for general system inquiries?"
[0355] In this way, the system of the present invention takes into account the user's emotions and generates more flexible and effective response messages, thereby improving the quality and efficiency of internal communications.
[0356] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0357] Step 1:
[0358] Initial Setup
[0359] The server creates an employee database containing user authentication information and permission settings, and stores it in cloud storage. This database also stores employee names, departments, positions, and responsibilities, as well as user emotional histories.
[0360] Input: User information, authentication information, configuration data for the emotion engine and natural language processing engine.
[0361] Output: Employee database stored in cloud storage. Pre-configured emotion engine and natural language processing engine.
[0362] Specific operation: Build a database using AWS RDS or Google Cloud SQL and integrate with IBM Watson's Tone Analyzer and SpaCy, as well as Google Cloud Natural Language API.
[0363] Step 2:
[0364] User Authentication
[0365] The user accesses the login screen using the terminal and enters the user ID and password.
[0366] The terminal transmits the entered authentication information to the server.
[0367] The server checks the authentication information, and if it is valid, authenticates the user and checks the permissions. If authentication is confirmed, it sets the access rights for the user.
[0368] Input: User ID, Password.
[0369] Output: Authentication result, user permission settings.
[0370] Specific operation: Encrypts data using the HTTPS protocol and performs user authentication using LDAP or OAuth 2.0.
[0371] Step 3:
[0372] Entering and parsing a query
[0373] Users enter natural language queries into the chatbot's interface, for example, "What are Tanaka-san's plans for this week?"
[0374] The terminal sends this query to the server.
[0375] The server sends the received query to a natural language processing engine (NLP engine), which analyzes the query, extracts keywords (such as "Tanaka-san" or "this week's schedule"), understands the context, and identifies the required information.
[0376] Input: The user's natural language query.
[0377] Output: Extracted keywords and identified information.
[0378] Specific behavior: Queries are sent using the HTTPS protocol and parsed using SpaCy or the Google Cloud Natural Language API.
[0379] Step 4:
[0380] Emotion recognition
[0381] The server passes the parsed query to the emotion engine to recognize the user's emotion, classifying it as positive, negative, or neutral based on the content and wording of the query.
[0382] Input: The parsed query.
[0383] Output: Perceived user sentiment (positive, negative, neutral, etc.).
[0384] Specific behavior: Recognize emotions using IBM Watson's Tone Analyzer.
[0385] Step 5:
[0386] Searching for Data
[0387] The server searches the employee database for relevant information based on the analysis results of the NLP engine and emotion engine. For example, it retrieves "Mr. Tanaka's schedule for this week."
[0388] Input: Analysis results (keywords, context information), recognized emotions.
[0389] Output: Search results (employee information).
[0390] Specific behavior: Uses SQL queries to retrieve required information from a database.
[0391] Step 6:
[0392] Generating a response message
[0393] The server generates a response message for the user based on the acquired data and the recognized emotion. For example, if the emotion is positive, the response message may be adjusted to say, "Tanaka's schedule has been confirmed. Tanaka has a fulfilling schedule this week!"
[0394] Input: Acquired employee information, perceived emotions.
[0395] Output: The generated response message.
[0396] What it does: Dynamically generate text messages using pre-defined templates.
[0397] Step 7:
[0398] Emotion history storage
[0399] The server stores the recognized user emotions in an emotion history database, which helps in generating future responses.
[0400] Input: Perceived user emotion.
[0401] Output: History stored in the emotion history database.
[0402] Specific operation: Emotion history information is added to the database and managed as a user profile.
[0403] Step 8:
[0404] Viewing the response
[0405] The server sends the generated response message to the terminal.
[0406] The terminal displays this message on the user interface so that the user can confirm it.
[0407] Input: The generated response message.
[0408] Output: The message displayed on the user's terminal.
[0409] Specific behavior: Displays a message on the chat screen of a web browser or mobile app.
[0410] (Application example 2)
[0411] 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."
[0412] Conventional employee information search systems simply analyze queries entered by users and retrieve appropriate information, resulting in mechanical and uniform responses, leaving a need for flexible responses that take user emotions into account. Furthermore, in factories and other workplaces, efficient and emotional feedback is important when giving work instructions, and a system that can meet these needs is needed.
[0413] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[0414] In this invention, the server includes means for receiving a query in natural language input by a user to a terminal, means for analyzing the query and retrieving appropriate information from a database based on the analysis result, means for generating a response message based on the retrieved information, means for displaying the response message on the user's terminal, means for recognizing the user's emotion and adjusting the response message based on the recognized emotion, means for saving the user's emotion history and using it to generate future response messages, and means for causing the work instructing robot to perform specific tasks in accordance with the user's emotion. This makes it possible to provide flexible and effective response messages and work instructions while taking the user's emotion into consideration.
[0415] A "query" refers to a natural language inquiry or instruction that a user enters into a system.
[0416] A "natural language processing engine" is a software engine that analyzes natural language text entered by a user and understands its meaning.
[0417] A "database" refers to a collection of information that is organized, stored, and managed so that it can be easily searched and retrieved.
[0418] A "response message" refers to a response or feedback from the system to a query entered by a user.
[0419] "Emotion recognition" refers to the process of detecting a user's emotional state (positive, negative, neutral, etc.) from the query they enter and their behavior during that time.
[0420] "Emotion history" refers to data that records and saves a user's emotional state in past queries and response messages.
[0421] A "work instruction robot" refers to a mechanical device that performs specific tasks based on user instructions.
[0422] "Server" refers to a central computer system that performs processes such as query analysis, data acquisition, emotion recognition, and response message generation.
[0423] This invention is a system that analyzes natural language queries entered by users, acquires information, and generates a response message. It also has the ability to recognize the user's emotions and adjust the response message based on those emotions.
[0424] The system consists of the following elements:
[0425] 1. Terminal: A device (PC, smartphone, tablet, etc.) through which a user inputs queries. Users access the system through the terminal to issue work instructions or make inquiries about information.
[0426] 2. Server: This is the central computer system that handles query analysis, data acquisition, emotion recognition, response message generation, etc. The server uses the following main software:
[0427] Natural language processing engines: Used to parse queries entered by users. Examples of such engines include the Python libraries NLTK (Natural Language Toolkit) and TextBlob.
[0428] Emotion recognition engine: Used to identify user emotions. NLTK's SentimentIntensityAnalyzer is an example.
[0429] Database: A disk resource for organizing, storing, and searching information. The database stores employee information and emotion history.
[0430] Specifically, a user inputs a natural language query through a terminal. For example, they input an instruction such as "Transport the next part." This query is sent to the server and analyzed by a natural language processing engine. Based on the keywords and contextual information obtained from the analysis, the server retrieves the appropriate information from a database.
[0431] Next, the emotion recognition engine recognizes emotions from the user's query. For example, if the user is impatient, the emotion is classified as positive, negative, or neutral. Based on this emotion information, the server adjusts the response message. For example, if the emotion is negative, the server generates a response message such as "Working has started. Please wait."
[0432] The generated response message is sent back to the terminal and displayed to the user. Furthermore, the user's emotion history is stored in a database and used to generate future response messages.
[0433] This system can also be applied to robots that provide work instructions in factories. The robots perform specific tasks (such as transporting parts or checking inventory) based on instructions received from a server, and provide emotional feedback.
[0434] As a concrete example, consider the case where a user inputs "Deliver the next part" into the terminal. This instruction is analyzed by the server, and if the emotion is determined to be positive, the robot will provide feedback such as "Delivering the next part. Progressing smoothly!"
[0435] Example prompt for a generative AI model:
[0436] Give the following command to your emotion-aware work instruction robot: "Deliver the next part." Recognize the user's emotion as positive and generate appropriate feedback.
[0437] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0438] Step 1:
[0439] A user enters a natural language query into a terminal, for example, "deliver the next part."
[0440] Input: A natural language query entered by a user.
[0441] Output: The entered query is saved in text format on the terminal.
[0442] Step 2:
[0443] The terminal transmits the query entered by the user to the server.
[0444] Input: The natural language query entered in step 1.
[0445] Output: The query is sent to the server.
[0446] Step 3:
[0447] The server analyzes the received query using a natural language processing engine (NLTK or TextBlob).
[0448] Input: A natural language query sent from the device.
[0449] Data processing: Query context analysis, keyword extraction.
[0450] Output: Keywords and context information as analysis results.
[0451] Step 4:
[0452] Based on the analysis results, the server retrieves appropriate information from the database, such as parts information and inventory status.
[0453] Input: Parsed keywords and context information.
[0454] Data processing: database search.
[0455] Output: Relevant information retrieved from the database.
[0456] Step 5:
[0457] The server uses an emotion recognition engine (NLTK's SentimentIntensityAnalyzer) to recognize emotions from the user's query.
[0458] Input: A natural language query.
[0459] Data operations: Sentiment analysis (positive, negative, neutral classification).
[0460] Output: Sentiment classification result.
[0461] Step 6:
[0462] The server generates a response message based on the acquired information and the emotion classification results.
[0463] Input: Information retrieved from the database and emotion recognition results.
[0464] Data processing: Response message generation.
[0465] Output: The generated response message.
[0466] Step 7:
[0467] The server stores the generated response message and the user's emotion history, which is used to respond to future queries.
[0468] Input: Response message and sentiment classification result.
[0469] Data storage: Storage in emotion history database.
[0470] Output: Updated emotion history database.
[0471] Step 8:
[0472] The terminal displays the response message sent from the server on the user interface.
[0473] Input: The response message from the server.
[0474] Output: The response message displayed in the user interface.
[0475] Step 9:
[0476] The robot receives instructions from the server and executes specific tasks. It also provides feedback based on the user's emotions.
[0477] Input: Specific work instructions from the server.
[0478] Output: Work performed and feedback.
[0479] 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.
[0480] 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.
[0481] 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.
[0482] [Second embodiment]
[0483] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0484] 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.
[0485] 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).
[0486] 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.
[0487] 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.
[0488] 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).
[0489] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[0490] 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.
[0491] 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.
[0492] 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.
[0493] 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.
[0494] 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."
[0495] The present invention provides a system for quickly and accurately searching and acquiring employee information. The following describes the specific program processing and examples.
[0496] Overall system flow
[0497] 1. Initial Setup
[0498] The server builds a database of all company employees and stores it in cloud storage.
[0499] The database contains information such as employee names, departments, positions, and responsibilities.
[0500] The server will have appropriate backups and security settings to strengthen data security and access restrictions.
[0501] 2. User Authentication
[0502] The user accesses the system from a terminal and enters their user ID and password on the login screen.
[0503] The terminal transmits the entered authentication information to the server.
[0504] The server checks the authentication information and allows access if it is correct. It also checks the user's privileges and allows only authorized functions to be used.
[0505] 3. Entering and parsing a query
[0506] Users enter natural language queries into the chatbot's interface, for example, "What is the responsibility of Person B in Department A?"
[0507] The terminal receives this query and sends it to the server.
[0508] The server uses a natural language processing engine to analyze the query, extracting keywords, understanding the context, and identifying the information need.
[0509] 4. Searching for data
[0510] The server searches the employee database for relevant information based on the analysis results. For example, it retrieves information about "Mr. B in Department A."
[0511] If the required information is found, the information is acquired and the next step is carried out.
[0512] 5. Generating a Response Message
[0513] The server generates a response message to the user based on the information it retrieves. For example, it creates a message that reads, "Mr. B is in charge of customer service."
[0514] 6. Displaying the Response
[0515] The server sends the generated message to the terminal.
[0516] The terminal displays this message on the user interface and presents it in a form that is easy for the user to understand.
[0517] Example
[0518] Example 1: Want to know the responsibilities of employees?
[0519] 1. The user types into the terminal, "What is the responsibility of Mr. B in Department A?"
[0520] 2. The device sends a query to the server.
[0521] 3. The server uses a natural language processing engine to identify "Department A" and "Mr. B" and searches for corresponding information in the employee database.
[0522] 4. The server obtains the search result "Mr. B is in charge of customer service."
[0523] 5. The server generates a response message stating, "Mr. B is in charge of customer service," and sends it to the terminal.
[0524] 6. The terminal displays this message on its user interface.
[0525] Example 2: When you want to know who to talk to
[0526] 1. The user types "Tell me who's in charge of marketing" into the terminal.
[0527] 2. The device sends a query to the server.
[0528] 3. The server analyzes "marketing manager" as a keyword and searches for corresponding information in the employee database.
[0529] 4. The server obtains the relevant information: "Mr. C is in charge of marketing."
[0530] 5. The server generates a response message stating "Mr. C is in charge of marketing" and sends it to the terminal.
[0531] 6. The terminal displays this message on its user interface.
[0532] The system of the present invention quickly and accurately retrieves and displays necessary in-house information based on a simple query input by the user.
[0533] The processing flow will be explained below.
[0534] Step 1:
[0535] A user accesses a terminal and enters a user ID and password to log in to the system.
[0536] Step 2:
[0537] The terminal transmits the input authentication information to the server.
[0538] Step 3:
[0539] The server checks the authentication information sent and allows the user access if it is correct. It also checks the user's authority and limits the functions that can be used.
[0540] Step 4:
[0541] Users enter natural language queries into the chatbot's interface, for example, "What are the responsibilities of Tanaka-san in the marketing department?"
[0542] Step 5:
[0543] The terminal sends this query to the chatbot's system.
[0544] Step 6:
[0545] The server uses a natural language processing engine to analyze the query, extracting keywords like "Marketing Department," "Tanaka-san," and "Responsibilities," and understands the context.
[0546] Step 7:
[0547] The server searches the employee database for the relevant employee information based on the analyzed query. Specifically, it retrieves information about "Mr. Tanaka from the Marketing Department."
[0548] Step 8:
[0549] The server retrieves relevant information from the employee database as a search result. For example, it retrieves information such as "Mr. Tanaka is in charge of market research."
[0550] Step 9:
[0551] The server generates a response message to convey to the user based on this acquired information, for example, "Mr. Tanaka is in charge of market research."
[0552] Step 10:
[0553] The server sends the generated response message to the terminal.
[0554] Step 11:
[0555] The terminal displays this response message on the user interface so that the user can confirm it.
[0556] Step 12:
[0557] The user reviews the displayed information and makes additional inquiries if necessary.
[0558] Example 1
[0559] 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."
[0560] Searching and retrieving employee information within a company is extremely important, but conventional systems can delay information retrieval or provide incorrect information. Furthermore, there are issues with insufficient user authentication and inaccuracies in natural language processing, which reduce business efficiency. The present invention aims to solve these problems and enable fast and accurate information retrieval.
[0561] 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.
[0562] In this invention, the server includes means for receiving a natural language query entered by a user into a terminal, means for analyzing the query and retrieving appropriate information from a person database based on the analysis result, means for generating a response message based on the retrieved information, means for displaying the response message on the user's terminal, means for receiving and confirming authentication information sent from the terminal, means for checking user authority based on the authentication information and setting the user so that only permitted functions can be used, means for using a natural language processing engine for analyzing the natural language query, and means for sending a response message to the terminal based on the retrieved information. This enables a user to quickly and accurately retrieve necessary internal company information by simply entering a query.
[0563] "User" refers to an individual or organizational member who accesses the system to retrieve information.
[0564] "Terminal" refers to an electronic device used by a user to input queries and display response messages.
[0565] A "query" refers to a question or request in natural language that a user enters into a terminal.
[0566] "Server" refers to a central device that receives queries from users, analyzes them, retrieves appropriate information, generates response messages, and sends them to terminals.
[0567] A "natural language processing engine" refers to software that analyzes input natural language queries and extracts important keywords and context.
[0568] A "person database" refers to a database that stores information about employees, including data such as name, department, position, and responsibilities.
[0569] "Authentication Information" refers to the user ID, password, or other authentication means entered by a user to access the system.
[0570] "User privileges" refer to the range of operations that an authenticated user can perform within the system and the information that they can access.
[0571] "Response message" refers to a message containing an answer that a server generates based on information retrieved in response to a user's query.
[0572] The present invention provides a system for quickly and accurately searching and acquiring employee information. The following describes the processing contents of a specific program and an example of the system.
[0573] Overall system configuration
[0574] This system consists of a user, a terminal, and a server. The user accesses the system through the terminal and inputs a query in natural language. The terminal sends this query to the server. The server analyzes the query, searches a database for the required information, and generates a response message to send to the terminal.
[0575] Specific names of the hardware and software to be used
[0576] 1. Cloud storage: Use Amazon RDS from Amazon Web Services (AWS).
[0577] 2. Authorization protocol: Use OAuth 2.0.
[0578] 3. Natural Language Processing Engine: Use Google's Dialogflow or Microsoft's LUIS.
[0579] 4. Communication protocol: Use HTTPS.
[0580] Program processing
[0581] The server first builds a database of all company employees and stores it in cloud storage. The database includes information such as employee name, department, position, and responsibilities. The server then performs appropriate backups and security settings to ensure data integrity and restrict access.
[0582] A user accesses the system from a terminal and enters their user ID and password on the login screen. The terminal sends the entered authentication information to the server. The server verifies the received authentication information, and if authentication is successful, issues a session ID to the user and sends it to the terminal. Authenticated users can only use permitted functions.
[0583] The user then inputs a natural language query into the chatbot's interface. For example, "What is the responsibility of Person B in Department A?" The device then sends this query to the server. The server then sends the query to a natural language processing engine, which extracts keywords, understands the context, and identifies information.
[0584] Based on the analysis results, the server specifies the appropriate tables and columns in the employee database and searches for the relevant information using an SQL query. For example, if the analysis results include "Department A" and "Mr. B," the server executes a query such as "SELECT Job Responsibilities FROM Employee Information WHERE Department = 'Department A' AND Name = 'Mr. B'."
[0585] After obtaining the search results, the server generates a response message to the user based on the search results. For example, if the search result is "customer service," the server generates a response message saying, "Mr. B is in charge of customer service."
[0586] The server generates a response message and sends it to the terminal, which displays the message on its user interface to provide the user with the result.
[0587] Specific examples
[0588] Example 1: Want to know the responsibilities of employees?
[0589] 1. The user types into the terminal, "What is the responsibility of Mr. B in Department A?" and sends it.
[0590] 2. The device sends a query to the server.
[0591] 3. The server uses a natural language processing engine to analyze the query and identify "Department A" and "Mr. B."
[0592] 4. The server searches for information about "Mr. B" in the employee database.
[0593] 5. The server obtains the search result "Mr. B is in charge of customer service."
[0594] 6. The server generates a message saying "Mr. B is in charge of customer service" and sends it to the terminal.
[0595] 7. The terminal displays this message on its user interface.
[0596] Example 2: When you want to know who to talk to
[0597] 1. The user types "Tell me who's in charge of marketing" into the terminal and sends it.
[0598] 2. The device sends a query to the server.
[0599] 3. The server analyzes "marketing manager" as a keyword and searches for corresponding information in the employee database.
[0600] 4. The server receives the information that "Mr. C is in charge of marketing."
[0601] 5. The server generates a message saying "Mr. C is in charge of marketing" and sends it to the terminal.
[0602] 6. The terminal displays this message on its user interface.
[0603] In this way, the system of the present invention can quickly and accurately obtain and display necessary information within a company based on a simple query input by the user.
[0604] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0605] Step 1: Initial Setup
[0606] The server first creates the necessary tables to build a database of all employees. The input data includes a dataset of employee names, departments, positions, and responsibilities. The database is stored in cloud storage (such as Amazon RDS). Specific operations include creating tables and importing data using SQL commands. Furthermore, backups and security settings are implemented to strengthen data integrity and access restrictions. This ensures that employee data is stored safely and efficiently.
[0607] Step 2: User authentication
[0608] A user accesses the system from a terminal and a login screen is displayed. The user enters a user ID and password and clicks the submit button. The terminal sends this authentication information to the server via the HTTPS protocol. The server compares the received authentication information with the information in the database, and if authentication is successful, generates a session ID and sends it to the terminal. This authenticates the user and allows them to access the system.
[0609] Step 3: Enter your query
[0610] The user inputs a query in natural language into the chatbot interface. For example, they might type, "Tell me who's in charge of marketing." The input query is confirmed by clicking the send button. The device receives this query and sends it to the server.
[0611] Step 4: Parsing the query
[0612] The server sends the received natural language query to a natural language processing engine such as Google's Dialogflow or Microsoft's LUIS. The input is the natural language query. The natural language processing engine analyzes the query, extracts keywords, understands the context, and generates analysis results. The output is important keywords and contextual information.
[0613] Step 5: Search for data
[0614] The server searches for the relevant information from the employee database based on the analysis results. The analysis results and the employee database are used as input. The server generates an SQL query and executes a query such as "SELECT Job Role FROM Employee Information WHERE Department = 'Marketing'". The output is the relevant employee information.
[0615] Step 6: Generate a response message
[0616] The server generates a response message based on the search results. The search results and a template are used as input. For example, if the search result is "Mr. C is in charge of marketing," the server generates a response message that reads, "Mr. C is in charge of marketing."
[0617] Step 7: Send a response message
[0618] The server sends the generated response message to the terminal. The generated response message and the destination terminal information are used as input. The terminal displays the received message on the chatbot's UI.
[0619] Step 8: View the response
[0620] The device displays the received message on the user's screen. The input is the response message received from the server. The specific operation is to add the message to the chatbot's UI component and display it in a readable format for the user, so that the user can get an answer to their query.
[0621] (Application example 1)
[0622] 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."
[0623] In order to quickly communicate with each department and person in charge within a factory, it is important to quickly and accurately obtain information about the person in charge. However, with conventional systems, it takes time to search and obtain information, making it difficult to achieve efficient communication. There is a need for a system that can solve this problem and improve the efficiency of factory operations.
[0624] 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.
[0625] In this invention, the server includes means for receiving a query in natural language input by a user to a terminal, means for analyzing the query and retrieving appropriate information from a database based on the analysis result, means for generating a response message based on the retrieved information, means for displaying the response message on the user's terminal, and means for the robot to quickly search and retrieve employee information within the factory, thereby enabling quick and accurate information retrieval within the factory.
[0626] A "user" is an entity that operates a terminal to input queries and retrieve information on the system.
[0627] A "terminal" is an electronic device through which a user enters queries and receives responses.
[0628] A "natural language query" is a sentence in which a user enters a question or request in everyday language.
[0629] The "means for analyzing queries" refers to a mechanism that uses a natural language processing engine to understand the input query and issue instructions to the database to retrieve appropriate information.
[0630] A "database" is a collection of data in which information about employees is systematically stored.
[0631] The "means for obtaining information" is a function for searching for corresponding information from a database based on the analyzed query.
[0632] The "means for generating a response message" is a process for creating a message that serves as a response to the user based on the acquired information.
[0633] The "means for displaying on the user's terminal" is a function for displaying the generated response message on the screen of the terminal operated by the user.
[0634] A "robot" is a device that patrols a factory and searches for and acquires information.
[0635] "Factory employee information" refers to information such as the name, department, and role of each employee working in the factory.
[0636] "Quick search and retrieval" is the process of quickly finding information about a specific employee and providing it to the robot as needed.
[0637] The present invention provides a system that allows a robot to quickly and accurately search and acquire employee information within a factory. The following describes the specific program processing content and an example implementation.
[0638] Overall system flow
[0639] 1. Initial Setup
[0640] The server builds a database of all factory employees and stores it in cloud storage.
[0641] The database contains information such as employee names, departments, positions, and responsibilities.
[0642] The server will have appropriate backups and security settings to strengthen data security and access restrictions.
[0643] 2. User Authentication
[0644] The robot accesses the system using a built-in tablet device and enters the user ID and password on the login screen.
[0645] The terminal transmits the entered authentication information to the server.
[0646] The server checks the authentication information and allows access if it is correct. It also checks the user's privileges and allows only authorized functions to be used.
[0647] 3. Entering and parsing a query
[0648] The robot inputs natural language queries into a built-in tablet, such as "Tell me who works in the quality control department."
[0649] The terminal receives this query and sends it to the server.
[0650] The server uses a natural language processing engine to analyze the query, extracting keywords, understanding the context, and identifying the information need.
[0651] 4. Searching for data
[0652] The server searches the employee database for relevant information based on the analysis results. For example, it retrieves information about the "Quality Control Department Personnel."
[0653] If the required information is found, the information is acquired and the next step is carried out.
[0654] 5. Generating a Response Message
[0655] The server generates a response message to the robot based on the information it retrieves. For example, it creates a message such as "Mr. D is in charge of quality control."
[0656] 6. Displaying the Response
[0657] The server sends the generated message to the terminal.
[0658] The terminal displays this message on the user interface and provides it in a form that is easy for the robot to understand.
[0659] Hardware and software used
[0660] Hardware: A tablet device installed on a patrol robot in the factory.
[0661] Software: Python or other server-based programs, natural language analysis engines such as Google Cloud Natural Language API.
[0662] Specific examples
[0663] For example, if a robot needs to find out who is in charge of quality control while on patrol, it can type "Tell me who is in charge of quality control" into the robot's tablet. This query is sent to the server and analyzed by a natural language processing engine. As a result, the relevant information is searched for in the employee database, and a response message is generated saying "Mr. D is in charge of quality control," which is displayed on the tablet.
[0664] Prompt Sentence Examples
[0665] "Tell me who is in charge of quality control."
[0666] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0667] Step 1:
[0668] Initial Setup
[0669] The server builds a database of all employees in the factory and stores it in cloud storage.
[0670] The database contains information such as employee names, departments, positions, and responsibilities.
[0671] Implement backups and security settings to strengthen data security and access restrictions.
[0672] Input: Employee information data
[0673] Output: Database
[0674] Step 2:
[0675] User Authentication
[0676] The robot accesses the system using a built-in tablet device and enters its user ID and password on the login screen.
[0677] The terminal transmits the entered authentication information to the server.
[0678] The server checks the authentication information and allows access if it is correct. It also checks the user's privileges and allows only authorized functions to be used.
[0679] Input: User ID, Password
[0680] Output: Authentication token
[0681] Step 3:
[0682] Entering and parsing a query
[0683] The robot types a natural language query into a tablet, for example, "Who is in the quality control department?"
[0684] The terminal receives this query and sends it to the server.
[0685] The server uses a natural language processing engine to analyze the query, extracting keywords, understanding the context, and identifying the information need.
[0686] Input: Natural language query
[0687] Output: Analysis results
[0688] Step 4:
[0689] Searching for Data
[0690] The server searches the employee database for relevant information based on the analysis results. For example, it retrieves information about the "Quality Control Department Personnel."
[0691] If the required information is found, the information is acquired and the next step is carried out.
[0692] Input: Analysis results
[0693] Output: Employee information
[0694] Step 5:
[0695] Generating a response message
[0696] The server generates a response message to the robot based on the information it retrieves. For example, it creates a message such as "Mr. D is in charge of quality control."
[0697] Input: Employee information
[0698] Output: Response message
[0699] Step 6:
[0700] Viewing the response
[0701] The server sends the generated message to the terminal.
[0702] The terminal displays this message on the user interface and provides it in a form that is easy for the robot to understand.
[0703] Input: Response message
[0704] Output: On-screen display
[0705] 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.
[0706] The present invention provides a system that not only analyzes natural language queries entered by users and searches for employee information, but also has the ability to recognize the user's emotions and adjust response messages based on those emotions.
[0707] Overall system flow
[0708] 1. Initial Setup
[0709] The server builds an employee database containing user authentication information and permission settings and stores it in cloud storage.
[0710] The server configures the emotion engine and sets it up to work with the natural language processing engine.
[0711] The database includes employee names, departments, positions, and responsibilities, as well as the user's emotional history.
[0712] 2. User Authentication
[0713] The user accesses the terminal and enters the user ID and password on the login screen.
[0714] The terminal transmits the input authentication information to the server.
[0715] The server checks the authentication information and allows access if it is correct. It also checks the user's authority and limits the functions that can be used.
[0716] 3. Entering and parsing a query
[0717] A user enters a natural language query into the chatbot's interface, for example, "What is Tanaka-san's schedule for this week?"
[0718] The terminal sends this query to the server.
[0719] The server uses a natural language processing engine to parse the query, which includes extracting keywords, understanding the context, and identifying the required information.
[0720] 4. Emotional Recognition
[0721] The server uses an emotion engine to recognize the user's emotion from the input query, for example, classifying emotions as positive, negative, neutral, etc.
[0722] The recognized emotion is used as a parameter to adjust the response message.
[0723] 5. Searching for data
[0724] The server searches for relevant information from the employee database based on the analysis results and the recognized emotion. For example, it retrieves "Mr. Tanaka's schedule for this week."
[0725] 6. Generating a Response Message
[0726] The server generates a response message to the user based on the information retrieved. For example, when Tanaka's schedule is confirmed, if the emotion is positive, the server will say something like "Tanaka has a fulfilling schedule this week!", and if the emotion is negative, the server will say something like "Tanaka's schedule for this week is as follows. We'll support you if you have any problems."
[0727] 7. Emotional history storage
[0728] The server stores the recognized user emotions in an emotion history database to aid in future response generation.
[0729] The emotion history is used as reference information when the user makes another inquiry.
[0730] 8. Displaying the Response
[0731] The server sends the generated response message to the terminal.
[0732] The terminal displays this response message on the user interface so that the user can confirm it.
[0733] Example
[0734] Example 1: Want to know the responsibilities of employees?
[0735] 1. The user types into the terminal, "What is Sato-san's job in the marketing department?"
[0736] 2. The device sends a query to the server.
[0737] 3. The server uses a natural language processing engine to identify "Marketing Department," "Mr. Sato," and "Job Responsibility," and searches for corresponding information.
[0738] 4. The server uses an emotion engine to recognize the emotion from the user's query (e.g., neutral).
[0739] 5. The server retrieves "Mr. Sato's responsibilities" from the employee database.
[0740] 6. Based on the information obtained, the server generates a neutral response message saying, "Mr. Sato is in charge of market research."
[0741] 7. The server stores the neutral emotion in the user's emotion history.
[0742] 8. The terminal displays the response message on the user interface.
[0743] Example 2: You want to know who to talk to
[0744] 1. The user types into the terminal, "Who should I contact for general system inquiries?"
[0745] 2. The device sends a query to the server.
[0746] 3. The server uses a natural language processing engine to identify "general system," "inquiry," and "consultation" and search for corresponding information.
[0747] 4. The server uses an emotion engine to recognize the emotion from the user's query (e.g., negative).
[0748] 5. The server retrieves the "system manager" information from the employee database.
[0749] 6. Based on the information obtained, the server generates a response message that takes negative emotions into consideration, such as, "For general system inquiries, please contact Yamada-san. If you have any problems, we will solve them immediately."
[0750] 7. The server stores negative emotions in the user's emotion history.
[0751] 8. The terminal displays the response message on the user interface.
[0752] The system of the present invention thus takes into account the user's emotions and generates more flexible and effective response messages, thereby improving the quality and efficiency of in-house communications.
[0753] The processing flow will be explained below.
[0754] Step 1:
[0755] A user accesses a terminal and enters a user ID and password to log in to the system.
[0756] Step 2:
[0757] The terminal transmits the input authentication information to the server.
[0758] Step 3:
[0759] The server checks the authentication information and allows the user access if it is correct. It also checks the user's authority and limits the functions that can be used.
[0760] Step 4:
[0761] Users input natural language queries into the chatbot interface, such as "What is Tanaka's responsibility in the marketing department?"
[0762] Step 5:
[0763] The terminal sends this query to the chatbot's system.
[0764] Step 6:
[0765] The server uses a natural language processing engine to analyze the input query, extracting keywords such as "Marketing Department," "Tanaka-san," and "job responsibilities," and also understands the context.
[0766] Step 7:
[0767] The server uses an emotion engine to recognize the user's emotion from the query, for example, "What is Tanaka-san's responsibility in the marketing department?", and identifies a neutral emotion.
[0768] Step 8:
[0769] The server searches the employee database for relevant information based on the analysis results and the recognized emotion, and retrieves information about "Mr. Tanaka from the Marketing Department."
[0770] Step 9:
[0771] The server obtains the information "Mr. Tanaka is in charge of market research" as a search result.
[0772] Step 10:
[0773] The server generates a tailored response message depending on the recognized emotion, for example, "Mr. Tanaka is in charge of market research" in the case of a neutral emotion.
[0774] Step 11:
[0775] The server stores the identified emotion information in the user's emotion history database so that future queries can refer to the emotion history to provide more appropriate responses.
[0776] Step 12:
[0777] The server sends the generated response message to the terminal.
[0778] Step 13:
[0779] The terminal displays this response message on the user interface so that the user can confirm it.
[0780] Step 14:
[0781] The user reviews the displayed information and makes additional inquiries if necessary.
[0782] Example 2
[0783] 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."
[0784] Conventional employee information search systems have difficulty generating responses that take user emotions into account, which hinders the quality of the user experience. Furthermore, there is a lack of a system for quickly providing accurate employee information, which reduces the efficiency of internal communication.
[0785] 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.
[0786] In this invention, the server includes means for receiving a query in natural language entered by a user into a terminal, means for analyzing the query and retrieving appropriate information from an employee database based on the analysis results, means for generating a response message based on the retrieved information, means for displaying the response message on the user's terminal, means for recognizing the user's emotion from the query and adjusting the response message based on the recognized emotion, and means for saving the recognized emotion in an emotion history database. This enables the generation of flexible and effective response messages that take the user's emotion into consideration, thereby enabling the rapid and accurate provision of employee information and improving the quality and efficiency of internal communication.
[0787] "User" refers to a person who utilizes the system to enter queries and obtain information.
[0788] "Terminal" refers to the device on which a user enters a query and checks the response, such as a PC or smartphone.
[0789] A "natural language query" refers to a question or request that a user enters into a system in everyday language.
[0790] A "server" refers to a computer system that analyzes queries, obtains information, generates response messages, recognizes emotions, and so on.
[0791] An "employee database" refers to data storage that stores information such as employee names, departments, positions, and responsibilities.
[0792] A "natural language processing engine" refers to a software component that analyzes natural language queries, extracts keywords, and understands context.
[0793] "Emotion Engine" refers to a software component for recognizing and classifying emotions from user queries.
[0794] "Emotion history database" refers to data storage that stores historical information about a user's emotions.
[0795] "Response message" refers to a text message that is generated based on the acquired information and provided to the user.
[0796] "Authentication information" refers to data such as a user ID and password used to identify a user.
[0797] "Authority settings" refers to setting information that controls the range of operations and functions permitted to a user.
[0798] The present invention provides a system that not only analyzes natural language queries entered by users and searches for employee information, but also has the ability to recognize the user's emotions and adjust response messages based on those emotions.
[0799] First, we will explain the initial setup of this system. The server builds an employee database that includes user authentication information and permission settings, and stores it in cloud storage. This database includes employee names, departments, positions, and responsibilities, as well as user emotion history. Amazon Web Services (AWS) Relational Database Service (RDS) and Google Cloud SQL are used for storage. The server also configures an emotion engine and a natural language processing engine (NLP engine) and sets them up to work together. SpaCy and Google Cloud Natural Language API are used as NLP engines, and IBM Watson's Tone Analyzer is used as the emotion engine.
[0800] Next, we will explain the user authentication process. The user accesses the login screen using a device (for example, a PC or smartphone) and enters their user ID and password. The device then sends the entered authentication information to the server. This communication uses the HTTPS protocol to ensure data security. The server checks the authentication information, and if it is valid, authenticates the user through the server's internal authentication system (for example, LDAP or OAuth 2.0), confirms the user's permissions, and limits the functions that can be used.
[0801] Next, we will explain query input and analysis. The user inputs a natural language query, such as "Tanaka-san, what's on the agenda for this week?" into the chatbot's interface (displayed on a web or mobile application). The device sends this query to the server. Again, communication uses an encrypted protocol (e.g., HTTPS). The server then sends the received query to the NLP engine. The NLP engine analyzes the query, extracting keywords (e.g., "Tanaka-san," "what's on the agenda for this week") and understanding the context to identify the required information.
[0802] Next, we will explain emotion recognition. The server passes the parsed query to the emotion engine to recognize the user's emotion. For example, it classifies the emotion as positive, negative, or neutral based on the content and wording of the query. The recognized emotion is then used as an important parameter when generating a response.
[0803] Next, we will explain data retrieval. The server searches for the necessary information from the employee database based on the analysis results of the NLP engine and emotion engine. For example, it retrieves "Mr. Tanaka's schedule for this week." This search uses an SQL query to efficiently extract information from the database.
[0804] Next, we will explain how to generate a response message. The server generates an appropriate response message based on the data obtained through the search and the recognized emotion. For example, if Tanaka's schedule is checked and the emotion is positive, a message such as "Tanaka-san, you have a great schedule this week! Have fun!" is generated. A preset template is used to generate the response message, and text is dynamically generated based on it.
[0805] Furthermore, we will explain how to store emotion history. The server stores the recognized user emotions in an emotion history database. This emotion history is used to generate future responses and improve the user experience.
[0806] Finally, we will explain how to display the response. The server sends the generated response message to the device. The device displays this message on its user interface so that the user can check it. Specifically, it is displayed on the chat screen of a web browser or mobile app.
[0807] Specific examples include the following:
[0808] Example 1: Want to know the responsibilities of employees?
[0809] "What is Sato-san's responsibility in the marketing department?"
[0810] Example 2: You want to know who to talk to
[0811] "Who should I contact for general system inquiries?"
[0812] In this way, the system of the present invention takes into account the user's emotions and generates more flexible and effective response messages, thereby improving the quality and efficiency of internal communications.
[0813] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0814] Step 1:
[0815] Initial Setup
[0816] The server creates an employee database containing user authentication information and permission settings, and stores it in cloud storage. This database also stores employee names, departments, positions, and responsibilities, as well as user emotional histories.
[0817] Input: User information, authentication information, configuration data for the emotion engine and natural language processing engine.
[0818] Output: Employee database stored in cloud storage. Pre-configured emotion engine and natural language processing engine.
[0819] Specific operation: Build a database using AWS RDS or Google Cloud SQL and integrate with IBM Watson's Tone Analyzer and SpaCy, as well as Google Cloud Natural Language API.
[0820] Step 2:
[0821] User Authentication
[0822] The user accesses the login screen using the terminal and enters the user ID and password.
[0823] The terminal transmits the entered authentication information to the server.
[0824] The server checks the authentication information, and if it is valid, authenticates the user and checks the permissions. If authentication is confirmed, it sets the access rights for the user.
[0825] Input: User ID, Password.
[0826] Output: Authentication result, user permission settings.
[0827] Specific operation: Encrypts data using the HTTPS protocol and performs user authentication using LDAP or OAuth 2.0.
[0828] Step 3:
[0829] Entering and parsing a query
[0830] Users enter natural language queries into the chatbot's interface, for example, "What are Tanaka-san's plans for this week?"
[0831] The terminal sends this query to the server.
[0832] The server sends the received query to a natural language processing engine (NLP engine), which analyzes the query, extracts keywords (such as "Tanaka-san" or "this week's schedule"), understands the context, and identifies the required information.
[0833] Input: The user's natural language query.
[0834] Output: Extracted keywords and identified information.
[0835] Specific behavior: Queries are sent using the HTTPS protocol and parsed using SpaCy or the Google Cloud Natural Language API.
[0836] Step 4:
[0837] Emotion recognition
[0838] The server passes the parsed query to the emotion engine to recognize the user's emotion, classifying it as positive, negative, or neutral based on the content and wording of the query.
[0839] Input: The parsed query.
[0840] Output: Perceived user sentiment (positive, negative, neutral, etc.).
[0841] Specific behavior: Recognize emotions using IBM Watson's Tone Analyzer.
[0842] Step 5:
[0843] Searching for Data
[0844] The server searches the employee database for relevant information based on the analysis results of the NLP engine and emotion engine. For example, it retrieves "Mr. Tanaka's schedule for this week."
[0845] Input: Analysis results (keywords, context information), recognized emotions.
[0846] Output: Search results (employee information).
[0847] Specific behavior: Uses SQL queries to retrieve required information from a database.
[0848] Step 6:
[0849] Generating a response message
[0850] The server generates a response message for the user based on the acquired data and the recognized emotion. For example, if the emotion is positive, the response message may be adjusted to say, "Tanaka's schedule has been confirmed. Tanaka has a fulfilling schedule this week!"
[0851] Input: Acquired employee information, perceived emotions.
[0852] Output: The generated response message.
[0853] What it does: Dynamically generate text messages using pre-defined templates.
[0854] Step 7:
[0855] Emotion history storage
[0856] The server stores the recognized user emotions in an emotion history database, which helps in generating future responses.
[0857] Input: Perceived user emotion.
[0858] Output: History stored in the emotion history database.
[0859] Specific operation: Emotion history information is added to the database and managed as a user profile.
[0860] Step 8:
[0861] Viewing the response
[0862] The server sends the generated response message to the terminal.
[0863] The terminal displays this message on the user interface so that the user can confirm it.
[0864] Input: The generated response message.
[0865] Output: The message displayed on the user's terminal.
[0866] Specific behavior: Displays a message on the chat screen of a web browser or mobile app.
[0867] (Application example 2)
[0868] 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."
[0869] Conventional employee information search systems simply analyze queries entered by users and retrieve appropriate information, resulting in mechanical and uniform responses, leaving a need for flexible responses that take user emotions into account. Furthermore, in factories and other workplaces, efficient and emotional feedback is important when giving work instructions, and a system that can meet these needs is needed.
[0870] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[0871] In this invention, the server includes means for receiving a query in natural language input by a user to a terminal, means for analyzing the query and retrieving appropriate information from a database based on the analysis result, means for generating a response message based on the retrieved information, means for displaying the response message on the user's terminal, means for recognizing the user's emotion and adjusting the response message based on the recognized emotion, means for saving the user's emotion history and using it to generate future response messages, and means for causing the work instructing robot to perform specific tasks in accordance with the user's emotion. This makes it possible to provide flexible and effective response messages and work instructions while taking the user's emotion into consideration.
[0872] A "query" refers to a natural language inquiry or instruction that a user enters into a system.
[0873] A "natural language processing engine" is a software engine that analyzes natural language text entered by a user and understands its meaning.
[0874] A "database" refers to a collection of information that is organized, stored, and managed so that it can be easily searched and retrieved.
[0875] A "response message" refers to a response or feedback from the system to a query entered by a user.
[0876] "Emotion recognition" refers to the process of detecting a user's emotional state (positive, negative, neutral, etc.) from the query they enter and their behavior during that time.
[0877] "Emotion history" refers to data that records and saves a user's emotional state in past queries and response messages.
[0878] A "work instruction robot" refers to a mechanical device that performs specific tasks based on user instructions.
[0879] "Server" refers to a central computer system that performs processes such as query analysis, data acquisition, emotion recognition, and response message generation.
[0880] This invention is a system that analyzes natural language queries entered by users, acquires information, and generates a response message. It also has the ability to recognize the user's emotions and adjust the response message based on those emotions.
[0881] The system consists of the following elements:
[0882] 1. Terminal: A device (PC, smartphone, tablet, etc.) through which a user inputs queries. Users access the system through the terminal to issue work instructions or make inquiries about information.
[0883] 2. Server: This is the central computer system that handles query analysis, data acquisition, emotion recognition, response message generation, etc. The server uses the following main software:
[0884] Natural language processing engines: Used to parse queries entered by users. Examples of such engines include the Python libraries NLTK (Natural Language Toolkit) and TextBlob.
[0885] Emotion recognition engine: Used to identify user emotions. NLTK's SentimentIntensityAnalyzer is an example.
[0886] Database: A disk resource for organizing, storing, and searching information. The database stores employee information and emotion history.
[0887] Specifically, a user inputs a natural language query through a terminal. For example, they input an instruction such as "Transport the next part." This query is sent to the server and analyzed by a natural language processing engine. Based on the keywords and contextual information obtained from the analysis, the server retrieves the appropriate information from a database.
[0888] Next, the emotion recognition engine recognizes emotions from the user's query. For example, if the user is impatient, the emotion is classified as positive, negative, or neutral. Based on this emotion information, the server adjusts the response message. For example, if the emotion is negative, the server generates a response message such as "Working has started. Please wait."
[0889] The generated response message is sent back to the terminal and displayed to the user. Furthermore, the user's emotion history is stored in a database and used to generate future response messages.
[0890] This system can also be applied to robots that provide work instructions in factories. The robots perform specific tasks (such as transporting parts or checking inventory) based on instructions received from a server, and provide emotional feedback.
[0891] As a concrete example, consider the case where a user inputs "Deliver the next part" into the terminal. This instruction is analyzed by the server, and if the emotion is determined to be positive, the robot will provide feedback such as "Delivering the next part. Progressing smoothly!"
[0892] Example prompt for a generative AI model:
[0893] Give the following command to your emotion-aware work instruction robot: "Deliver the next part." Recognize the user's emotion as positive and generate appropriate feedback.
[0894] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0895] Step 1:
[0896] A user enters a natural language query into a terminal, for example, "deliver the next part."
[0897] Input: A natural language query entered by a user.
[0898] Output: The entered query is saved in text format on the terminal.
[0899] Step 2:
[0900] The terminal transmits the query entered by the user to the server.
[0901] Input: The natural language query entered in step 1.
[0902] Output: The query is sent to the server.
[0903] Step 3:
[0904] The server analyzes the received query using a natural language processing engine (NLTK or TextBlob).
[0905] Input: A natural language query sent from the device.
[0906] Data processing: Query context analysis, keyword extraction.
[0907] Output: Keywords and context information as analysis results.
[0908] Step 4:
[0909] Based on the analysis results, the server retrieves appropriate information from the database, such as parts information and inventory status.
[0910] Input: Parsed keywords and context information.
[0911] Data processing: database search.
[0912] Output: Relevant information retrieved from the database.
[0913] Step 5:
[0914] The server uses an emotion recognition engine (NLTK's SentimentIntensityAnalyzer) to recognize emotions from the user's query.
[0915] Input: A natural language query.
[0916] Data operations: Sentiment analysis (positive, negative, neutral classification).
[0917] Output: Sentiment classification result.
[0918] Step 6:
[0919] The server generates a response message based on the acquired information and the emotion classification results.
[0920] Input: Information retrieved from the database and emotion recognition results.
[0921] Data processing: Response message generation.
[0922] Output: The generated response message.
[0923] Step 7:
[0924] The server stores the generated response message and the user's emotion history, which is used to respond to future queries.
[0925] Input: Response message and sentiment classification result.
[0926] Data storage: Storage in emotion history database.
[0927] Output: Updated emotion history database.
[0928] Step 8:
[0929] The terminal displays the response message sent from the server on the user interface.
[0930] Input: The response message from the server.
[0931] Output: The response message displayed in the user interface.
[0932] Step 9:
[0933] The robot receives instructions from the server and executes specific tasks. It also provides feedback based on the user's emotions.
[0934] Input: Specific work instructions from the server.
[0935] Output: Work performed and feedback.
[0936] 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.
[0937] 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.
[0938] 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.
[0939] [Third embodiment]
[0940] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[0941] 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.
[0942] 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).
[0943] 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.
[0944] 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.
[0945] 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).
[0946] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[0947] 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.
[0948] 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.
[0949] 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.
[0950] 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.
[0951] 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."
[0952] The present invention provides a system for quickly and accurately searching and acquiring employee information. The following describes the specific program processing and examples.
[0953] Overall system flow
[0954] 1. Initial Setup
[0955] The server builds a database of all company employees and stores it in cloud storage.
[0956] The database contains information such as employee names, departments, positions, and responsibilities.
[0957] The server will have appropriate backups and security settings to strengthen data security and access restrictions.
[0958] 2. User Authentication
[0959] The user accesses the system from a terminal and enters their user ID and password on the login screen.
[0960] The terminal transmits the entered authentication information to the server.
[0961] The server checks the authentication information and allows access if it is correct. It also checks the user's privileges and allows only authorized functions to be used.
[0962] 3. Entering and parsing a query
[0963] Users enter natural language queries into the chatbot's interface, for example, "What is the responsibility of Person B in Department A?"
[0964] The terminal receives this query and sends it to the server.
[0965] The server uses a natural language processing engine to analyze the query, extracting keywords, understanding the context, and identifying the information need.
[0966] 4. Searching for data
[0967] The server searches the employee database for relevant information based on the analysis results. For example, it retrieves information about "Mr. B in Department A."
[0968] If the required information is found, the information is acquired and the next step is carried out.
[0969] 5. Generating a Response Message
[0970] The server generates a response message to the user based on the information it retrieves. For example, it creates a message that reads, "Mr. B is in charge of customer service."
[0971] 6. Displaying the Response
[0972] The server sends the generated message to the terminal.
[0973] The terminal displays this message on the user interface and presents it in a form that is easy for the user to understand.
[0974] Example
[0975] Example 1: Want to know the responsibilities of employees?
[0976] 1. The user types into the terminal, "What is the responsibility of Mr. B in Department A?"
[0977] 2. The device sends a query to the server.
[0978] 3. The server uses a natural language processing engine to identify "Department A" and "Mr. B" and searches for corresponding information in the employee database.
[0979] 4. The server obtains the search result "Mr. B is in charge of customer service."
[0980] 5. The server generates a response message stating, "Mr. B is in charge of customer service," and sends it to the terminal.
[0981] 6. The terminal displays this message on its user interface.
[0982] Example 2: When you want to know who to talk to
[0983] 1. The user types "Tell me who's in charge of marketing" into the terminal.
[0984] 2. The device sends a query to the server.
[0985] 3. The server analyzes "marketing manager" as a keyword and searches for corresponding information in the employee database.
[0986] 4. The server obtains the relevant information: "Mr. C is in charge of marketing."
[0987] 5. The server generates a response message stating "Mr. C is in charge of marketing" and sends it to the terminal.
[0988] 6. The terminal displays this message on its user interface.
[0989] The system of the present invention quickly and accurately retrieves and displays necessary in-house information based on a simple query input by the user.
[0990] The processing flow will be explained below.
[0991] Step 1:
[0992] A user accesses a terminal and enters a user ID and password to log in to the system.
[0993] Step 2:
[0994] The terminal transmits the input authentication information to the server.
[0995] Step 3:
[0996] The server checks the authentication information sent and allows the user access if it is correct. It also checks the user's authority and limits the functions that can be used.
[0997] Step 4:
[0998] Users enter natural language queries into the chatbot's interface, for example, "What are the responsibilities of Tanaka-san in the marketing department?"
[0999] Step 5:
[1000] The terminal sends this query to the chatbot's system.
[1001] Step 6:
[1002] The server uses a natural language processing engine to analyze the query, extracting keywords like "Marketing Department," "Tanaka-san," and "Responsibilities," and understands the context.
[1003] Step 7:
[1004] The server searches the employee database for the relevant employee information based on the analyzed query. Specifically, it retrieves information about "Mr. Tanaka from the Marketing Department."
[1005] Step 8:
[1006] The server retrieves relevant information from the employee database as a search result. For example, it retrieves information such as "Mr. Tanaka is in charge of market research."
[1007] Step 9:
[1008] The server generates a response message to convey to the user based on this acquired information, for example, "Mr. Tanaka is in charge of market research."
[1009] Step 10:
[1010] The server sends the generated response message to the terminal.
[1011] Step 11:
[1012] The terminal displays this response message on the user interface so that the user can confirm it.
[1013] Step 12:
[1014] The user reviews the displayed information and makes additional inquiries if necessary.
[1015] Example 1
[1016] 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."
[1017] Searching and retrieving employee information within a company is extremely important, but conventional systems can delay information retrieval or provide incorrect information. Furthermore, there are issues with insufficient user authentication and inaccuracies in natural language processing, which reduce business efficiency. The present invention aims to solve these problems and enable fast and accurate information retrieval.
[1018] 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.
[1019] In this invention, the server includes means for receiving a natural language query entered by a user into a terminal, means for analyzing the query and retrieving appropriate information from a person database based on the analysis result, means for generating a response message based on the retrieved information, means for displaying the response message on the user's terminal, means for receiving and confirming authentication information sent from the terminal, means for checking user authority based on the authentication information and setting the user so that only permitted functions can be used, means for using a natural language processing engine for analyzing the natural language query, and means for sending a response message to the terminal based on the retrieved information. This enables a user to quickly and accurately retrieve necessary internal company information by simply entering a query.
[1020] "User" refers to an individual or organizational member who accesses the system to retrieve information.
[1021] "Terminal" refers to an electronic device used by a user to input queries and display response messages.
[1022] A "query" refers to a question or request in natural language that a user enters into a terminal.
[1023] "Server" refers to a central device that receives queries from users, analyzes them, retrieves appropriate information, generates response messages, and sends them to terminals.
[1024] A "natural language processing engine" refers to software that analyzes input natural language queries and extracts important keywords and context.
[1025] A "person database" refers to a database that stores information about employees, including data such as name, department, position, and responsibilities.
[1026] "Authentication Information" refers to the user ID, password, or other authentication means entered by a user to access the system.
[1027] "User privileges" refer to the range of operations that an authenticated user can perform within the system and the information that they can access.
[1028] "Response message" refers to a message containing an answer that a server generates based on information retrieved in response to a user's query.
[1029] The present invention provides a system for quickly and accurately searching and acquiring employee information. The following describes the processing contents of a specific program and an example of the system.
[1030] Overall system configuration
[1031] This system consists of a user, a terminal, and a server. The user accesses the system through the terminal and inputs a query in natural language. The terminal sends this query to the server. The server analyzes the query, searches a database for the required information, and generates a response message to send to the terminal.
[1032] Specific names of the hardware and software to be used
[1033] 1. Cloud storage: Use Amazon RDS from Amazon Web Services (AWS).
[1034] 2. Authorization protocol: Use OAuth 2.0.
[1035] 3. Natural Language Processing Engine: Use Google's Dialogflow or Microsoft's LUIS.
[1036] 4. Communication protocol: Use HTTPS.
[1037] Program processing
[1038] The server first builds a database of all company employees and stores it in cloud storage. The database includes information such as employee name, department, position, and responsibilities. The server then performs appropriate backups and security settings to ensure data integrity and restrict access.
[1039] A user accesses the system from a terminal and enters their user ID and password on the login screen. The terminal sends the entered authentication information to the server. The server verifies the received authentication information, and if authentication is successful, issues a session ID to the user and sends it to the terminal. Authenticated users can only use permitted functions.
[1040] The user then inputs a natural language query into the chatbot's interface. For example, "What is the responsibility of Person B in Department A?" The device then sends this query to the server. The server then sends the query to a natural language processing engine, which extracts keywords, understands the context, and identifies information.
[1041] Based on the analysis results, the server specifies the appropriate tables and columns in the employee database and searches for the relevant information using an SQL query. For example, if the analysis results include "Department A" and "Mr. B," the server executes a query such as "SELECT Job Responsibilities FROM Employee Information WHERE Department = 'Department A' AND Name = 'Mr. B'."
[1042] After obtaining the search results, the server generates a response message to the user based on the search results. For example, if the search result is "customer service," the server generates a response message saying, "Mr. B is in charge of customer service."
[1043] The server generates a response message and sends it to the terminal, which displays the message on its user interface to provide the user with the result.
[1044] Specific examples
[1045] Example 1: Want to know the responsibilities of employees?
[1046] 1. The user types into the terminal, "What is the responsibility of Mr. B in Department A?" and sends it.
[1047] 2. The device sends a query to the server.
[1048] 3. The server uses a natural language processing engine to analyze the query and identify "Department A" and "Mr. B."
[1049] 4. The server searches for information about "Mr. B" in the employee database.
[1050] 5. The server obtains the search result "Mr. B is in charge of customer service."
[1051] 6. The server generates a message saying "Mr. B is in charge of customer service" and sends it to the terminal.
[1052] 7. The terminal displays this message on its user interface.
[1053] Example 2: When you want to know who to talk to
[1054] 1. The user types "Tell me who's in charge of marketing" into the terminal and sends it.
[1055] 2. The device sends a query to the server.
[1056] 3. The server analyzes "marketing manager" as a keyword and searches for corresponding information in the employee database.
[1057] 4. The server receives the information that "Mr. C is in charge of marketing."
[1058] 5. The server generates a message saying "Mr. C is in charge of marketing" and sends it to the terminal.
[1059] 6. The terminal displays this message on its user interface.
[1060] In this way, the system of the present invention can quickly and accurately obtain and display necessary information within a company based on a simple query input by the user.
[1061] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1062] Step 1: Initial Setup
[1063] The server first creates the necessary tables to build a database of all employees. The input data includes a dataset of employee names, departments, positions, and responsibilities. The database is stored in cloud storage (such as Amazon RDS). Specific operations include creating tables and importing data using SQL commands. Furthermore, backups and security settings are implemented to strengthen data integrity and access restrictions. This ensures that employee data is stored safely and efficiently.
[1064] Step 2: User authentication
[1065] A user accesses the system from a terminal and a login screen is displayed. The user enters a user ID and password and clicks the submit button. The terminal sends this authentication information to the server via the HTTPS protocol. The server compares the received authentication information with the information in the database, and if authentication is successful, generates a session ID and sends it to the terminal. This authenticates the user and allows them to access the system.
[1066] Step 3: Enter your query
[1067] The user inputs a query in natural language into the chatbot interface. For example, they might type, "Tell me who's in charge of marketing." The input query is confirmed by clicking the send button. The device receives this query and sends it to the server.
[1068] Step 4: Parsing the query
[1069] The server sends the received natural language query to a natural language processing engine such as Google's Dialogflow or Microsoft's LUIS. The input is the natural language query. The natural language processing engine analyzes the query, extracts keywords, understands the context, and generates analysis results. The output is important keywords and contextual information.
[1070] Step 5: Search for data
[1071] The server searches for the relevant information from the employee database based on the analysis results. The analysis results and the employee database are used as input. The server generates an SQL query and executes a query such as "SELECT Job Role FROM Employee Information WHERE Department = 'Marketing'". The output is the relevant employee information.
[1072] Step 6: Generate a response message
[1073] The server generates a response message based on the search results. The search results and a template are used as input. For example, if the search result is "Mr. C is in charge of marketing," the server generates a response message that reads, "Mr. C is in charge of marketing."
[1074] Step 7: Send a response message
[1075] The server sends the generated response message to the terminal. The generated response message and the destination terminal information are used as input. The terminal displays the received message on the chatbot's UI.
[1076] Step 8: View the response
[1077] The device displays the received message on the user's screen. The input is the response message received from the server. The specific operation is to add the message to the chatbot's UI component and display it in a readable format for the user, so that the user can get an answer to their query.
[1078] (Application example 1)
[1079] 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."
[1080] In order to quickly communicate with each department and person in charge within a factory, it is important to quickly and accurately obtain information about the person in charge. However, with conventional systems, it takes time to search and obtain information, making it difficult to achieve efficient communication. There is a need for a system that can solve this problem and improve the efficiency of factory operations.
[1081] 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.
[1082] In this invention, the server includes means for receiving a query in natural language input by a user to a terminal, means for analyzing the query and retrieving appropriate information from a database based on the analysis result, means for generating a response message based on the retrieved information, means for displaying the response message on the user's terminal, and means for the robot to quickly search and retrieve employee information within the factory, thereby enabling quick and accurate information retrieval within the factory.
[1083] A "user" is an entity that operates a terminal to input queries and retrieve information on the system.
[1084] A "terminal" is an electronic device through which a user enters queries and receives responses.
[1085] A "natural language query" is a sentence in which a user enters a question or request in everyday language.
[1086] The "means for analyzing queries" refers to a mechanism that uses a natural language processing engine to understand the input query and issue instructions to the database to retrieve appropriate information.
[1087] A "database" is a collection of data in which information about employees is systematically stored.
[1088] The "means for obtaining information" is a function for searching for corresponding information from a database based on the analyzed query.
[1089] The "means for generating a response message" is a process for creating a message that serves as a response to the user based on the acquired information.
[1090] The "means for displaying on the user's terminal" is a function for displaying the generated response message on the screen of the terminal operated by the user.
[1091] A "robot" is a device that patrols a factory and searches for and acquires information.
[1092] "Factory employee information" refers to information such as the name, department, and role of each employee working in the factory.
[1093] "Quick search and retrieval" is the process of quickly finding information about a specific employee and providing it to the robot as needed.
[1094] The present invention provides a system that allows a robot to quickly and accurately search and acquire employee information within a factory. The following describes the specific program processing content and an example implementation.
[1095] Overall system flow
[1096] 1. Initial Setup
[1097] The server builds a database of all factory employees and stores it in cloud storage.
[1098] The database contains information such as employee names, departments, positions, and responsibilities.
[1099] The server will have appropriate backups and security settings to strengthen data security and access restrictions.
[1100] 2. User Authentication
[1101] The robot accesses the system using a built-in tablet device and enters the user ID and password on the login screen.
[1102] The terminal transmits the entered authentication information to the server.
[1103] The server checks the authentication information and allows access if it is correct. It also checks the user's privileges and allows only authorized functions to be used.
[1104] 3. Entering and parsing a query
[1105] The robot inputs natural language queries into a built-in tablet, such as "Tell me who works in the quality control department."
[1106] The terminal receives this query and sends it to the server.
[1107] The server uses a natural language processing engine to analyze the query, extracting keywords, understanding the context, and identifying the information need.
[1108] 4. Searching for data
[1109] The server searches the employee database for relevant information based on the analysis results. For example, it retrieves information about the "Quality Control Department Personnel."
[1110] If the required information is found, the information is acquired and the next step is carried out.
[1111] 5. Generating a Response Message
[1112] The server generates a response message to the robot based on the information it retrieves. For example, it creates a message such as "Mr. D is in charge of quality control."
[1113] 6. Displaying the Response
[1114] The server sends the generated message to the terminal.
[1115] The terminal displays this message on the user interface and provides it in a form that is easy for the robot to understand.
[1116] Hardware and software used
[1117] Hardware: A tablet device installed on a patrol robot in the factory.
[1118] Software: Python or other server-based programs, natural language analysis engines such as Google Cloud Natural Language API.
[1119] Specific examples
[1120] For example, if a robot needs to find out who is in charge of quality control while on patrol, it can type "Tell me who is in charge of quality control" into the robot's tablet. This query is sent to the server and analyzed by a natural language processing engine. As a result, the relevant information is searched for in the employee database, and a response message is generated saying "Mr. D is in charge of quality control," which is displayed on the tablet.
[1121] Prompt Sentence Examples
[1122] "Tell me who is in charge of quality control."
[1123] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1124] Step 1:
[1125] Initial Setup
[1126] The server builds a database of all employees in the factory and stores it in cloud storage.
[1127] The database contains information such as employee names, departments, positions, and responsibilities.
[1128] Implement backups and security settings to strengthen data security and access restrictions.
[1129] Input: Employee information data
[1130] Output: Database
[1131] Step 2:
[1132] User Authentication
[1133] The robot accesses the system using a built-in tablet device and enters its user ID and password on the login screen.
[1134] The terminal transmits the entered authentication information to the server.
[1135] The server checks the authentication information and allows access if it is correct. It also checks the user's privileges and allows only authorized functions to be used.
[1136] Input: User ID, Password
[1137] Output: Authentication token
[1138] Step 3:
[1139] Entering and parsing a query
[1140] The robot types a natural language query into a tablet, for example, "Who is in the quality control department?"
[1141] The terminal receives this query and sends it to the server.
[1142] The server uses a natural language processing engine to analyze the query, extracting keywords, understanding the context, and identifying the information need.
[1143] Input: Natural language query
[1144] Output: Analysis results
[1145] Step 4:
[1146] Searching for Data
[1147] The server searches the employee database for relevant information based on the analysis results. For example, it retrieves information about the "Quality Control Department Personnel."
[1148] If the required information is found, the information is acquired and the next step is carried out.
[1149] Input: Analysis results
[1150] Output: Employee information
[1151] Step 5:
[1152] Generating a response message
[1153] The server generates a response message to the robot based on the information it retrieves. For example, it creates a message such as "Mr. D is in charge of quality control."
[1154] Input: Employee information
[1155] Output: Response message
[1156] Step 6:
[1157] Viewing the response
[1158] The server sends the generated message to the terminal.
[1159] The terminal displays this message on the user interface and provides it in a form that is easy for the robot to understand.
[1160] Input: Response message
[1161] Output: On-screen display
[1162] 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.
[1163] The present invention provides a system that not only analyzes natural language queries entered by users and searches for employee information, but also has the ability to recognize the user's emotions and adjust response messages based on those emotions.
[1164] Overall system flow
[1165] 1. Initial Setup
[1166] The server builds an employee database containing user authentication information and permission settings and stores it in cloud storage.
[1167] The server configures the emotion engine and sets it up to work with the natural language processing engine.
[1168] The database includes employee names, departments, positions, and responsibilities, as well as the user's emotional history.
[1169] 2. User Authentication
[1170] The user accesses the terminal and enters the user ID and password on the login screen.
[1171] The terminal transmits the input authentication information to the server.
[1172] The server checks the authentication information and allows access if it is correct. It also checks the user's authority and limits the functions that can be used.
[1173] 3. Entering and parsing a query
[1174] A user enters a natural language query into the chatbot's interface, for example, "What is Tanaka-san's schedule for this week?"
[1175] The terminal sends this query to the server.
[1176] The server uses a natural language processing engine to parse the query, which includes extracting keywords, understanding the context, and identifying the required information.
[1177] 4. Emotional Recognition
[1178] The server uses an emotion engine to recognize the user's emotion from the input query, for example, classifying emotions as positive, negative, neutral, etc.
[1179] The recognized emotion is used as a parameter to adjust the response message.
[1180] 5. Searching for data
[1181] The server searches for relevant information from the employee database based on the analysis results and the recognized emotion. For example, it retrieves "Mr. Tanaka's schedule for this week."
[1182] 6. Generating a Response Message
[1183] The server generates a response message to the user based on the information retrieved. For example, when Tanaka's schedule is confirmed, if the emotion is positive, the server will say something like "Tanaka has a fulfilling schedule this week!", and if the emotion is negative, the server will say something like "Tanaka's schedule for this week is as follows. We'll support you if you have any problems."
[1184] 7. Emotional history storage
[1185] The server stores the recognized user emotions in an emotion history database to aid in future response generation.
[1186] The emotion history is used as reference information when the user makes another inquiry.
[1187] 8. Displaying the Response
[1188] The server sends the generated response message to the terminal.
[1189] The terminal displays this response message on the user interface so that the user can confirm it.
[1190] Example
[1191] Example 1: Want to know the responsibilities of employees?
[1192] 1. The user types into the terminal, "What is Sato-san's job in the marketing department?"
[1193] 2. The device sends a query to the server.
[1194] 3. The server uses a natural language processing engine to identify "Marketing Department," "Mr. Sato," and "Job Responsibility," and searches for corresponding information.
[1195] 4. The server uses an emotion engine to recognize the emotion from the user's query (e.g., neutral).
[1196] 5. The server retrieves "Mr. Sato's responsibilities" from the employee database.
[1197] 6. Based on the information obtained, the server generates a neutral response message saying, "Mr. Sato is in charge of market research."
[1198] 7. The server stores the neutral emotion in the user's emotion history.
[1199] 8. The terminal displays the response message on the user interface.
[1200] Example 2: You want to know who to talk to
[1201] 1. The user types into the terminal, "Who should I contact for general system inquiries?"
[1202] 2. The device sends a query to the server.
[1203] 3. The server uses a natural language processing engine to identify "general system," "inquiry," and "consultation" and search for corresponding information.
[1204] 4. The server uses an emotion engine to recognize the emotion from the user's query (e.g., negative).
[1205] 5. The server retrieves the "system manager" information from the employee database.
[1206] 6. Based on the information obtained, the server generates a response message that takes negative emotions into consideration, such as, "For general system inquiries, please contact Yamada-san. If you have any problems, we will solve them immediately."
[1207] 7. The server stores negative emotions in the user's emotion history.
[1208] 8. The terminal displays the response message on the user interface.
[1209] The system of the present invention thus takes into account the user's emotions and generates more flexible and effective response messages, thereby improving the quality and efficiency of in-house communications.
[1210] The processing flow will be explained below.
[1211] Step 1:
[1212] A user accesses a terminal and enters a user ID and password to log in to the system.
[1213] Step 2:
[1214] The terminal transmits the input authentication information to the server.
[1215] Step 3:
[1216] The server checks the authentication information and allows the user access if it is correct. It also checks the user's authority and limits the functions that can be used.
[1217] Step 4:
[1218] Users input natural language queries into the chatbot interface, such as "What is Tanaka's responsibility in the marketing department?"
[1219] Step 5:
[1220] The terminal sends this query to the chatbot's system.
[1221] Step 6:
[1222] The server uses a natural language processing engine to analyze the input query, extracting keywords such as "Marketing Department," "Tanaka-san," and "job responsibilities," and also understands the context.
[1223] Step 7:
[1224] The server uses an emotion engine to recognize the user's emotion from the query, for example, "What is Tanaka-san's responsibility in the marketing department?", and identifies a neutral emotion.
[1225] Step 8:
[1226] The server searches the employee database for relevant information based on the analysis results and the recognized emotion, and retrieves information about "Mr. Tanaka from the Marketing Department."
[1227] Step 9:
[1228] The server obtains the information "Mr. Tanaka is in charge of market research" as a search result.
[1229] Step 10:
[1230] The server generates a tailored response message depending on the recognized emotion, for example, "Mr. Tanaka is in charge of market research" in the case of a neutral emotion.
[1231] Step 11:
[1232] The server stores the identified emotion information in the user's emotion history database so that future queries can refer to the emotion history to provide more appropriate responses.
[1233] Step 12:
[1234] The server sends the generated response message to the terminal.
[1235] Step 13:
[1236] The terminal displays this response message on the user interface so that the user can confirm it.
[1237] Step 14:
[1238] The user reviews the displayed information and makes additional inquiries if necessary.
[1239] Example 2
[1240] 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."
[1241] Conventional employee information search systems have difficulty generating responses that take user emotions into account, which hinders the quality of the user experience. Furthermore, there is a lack of a system for quickly providing accurate employee information, which reduces the efficiency of internal communication.
[1242] 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.
[1243] In this invention, the server includes means for receiving a query in natural language entered by a user into a terminal, means for analyzing the query and retrieving appropriate information from an employee database based on the analysis results, means for generating a response message based on the retrieved information, means for displaying the response message on the user's terminal, means for recognizing the user's emotion from the query and adjusting the response message based on the recognized emotion, and means for saving the recognized emotion in an emotion history database. This enables the generation of flexible and effective response messages that take the user's emotion into consideration, thereby enabling the rapid and accurate provision of employee information and improving the quality and efficiency of internal communication.
[1244] "User" refers to a person who utilizes the system to enter queries and obtain information.
[1245] "Terminal" refers to the device on which a user enters a query and checks the response, such as a PC or smartphone.
[1246] A "natural language query" refers to a question or request that a user enters into a system in everyday language.
[1247] A "server" refers to a computer system that analyzes queries, obtains information, generates response messages, recognizes emotions, and so on.
[1248] An "employee database" refers to data storage that stores information such as employee names, departments, positions, and responsibilities.
[1249] A "natural language processing engine" refers to a software component that analyzes natural language queries, extracts keywords, and understands context.
[1250] "Emotion Engine" refers to a software component for recognizing and classifying emotions from user queries.
[1251] "Emotion history database" refers to data storage that stores historical information about a user's emotions.
[1252] "Response message" refers to a text message that is generated based on the acquired information and provided to the user.
[1253] "Authentication information" refers to data such as a user ID and password used to identify a user.
[1254] "Authority settings" refers to setting information that controls the range of operations and functions permitted to a user.
[1255] The present invention provides a system that not only analyzes natural language queries entered by users and searches for employee information, but also has the ability to recognize the user's emotions and adjust response messages based on those emotions.
[1256] First, we will explain the initial setup of this system. The server builds an employee database that includes user authentication information and permission settings, and stores it in cloud storage. This database includes employee names, departments, positions, and responsibilities, as well as user emotion history. Amazon Web Services (AWS) Relational Database Service (RDS) and Google Cloud SQL are used for storage. The server also configures an emotion engine and a natural language processing engine (NLP engine) and sets them up to work together. SpaCy and Google Cloud Natural Language API are used as NLP engines, and IBM Watson's Tone Analyzer is used as the emotion engine.
[1257] Next, we will explain the user authentication process. The user accesses the login screen using a device (for example, a PC or smartphone) and enters their user ID and password. The device then sends the entered authentication information to the server. This communication uses the HTTPS protocol to ensure data security. The server checks the authentication information, and if it is valid, authenticates the user through the server's internal authentication system (for example, LDAP or OAuth 2.0), confirms the user's permissions, and limits the functions that can be used.
[1258] Next, we will explain query input and analysis. The user inputs a natural language query, such as "Tanaka-san, what's on the agenda for this week?" into the chatbot's interface (displayed on a web or mobile application). The device sends this query to the server. Again, communication uses an encrypted protocol (e.g., HTTPS). The server then sends the received query to the NLP engine. The NLP engine analyzes the query, extracting keywords (e.g., "Tanaka-san," "what's on the agenda for this week") and understanding the context to identify the required information.
[1259] Next, we will explain emotion recognition. The server passes the parsed query to the emotion engine to recognize the user's emotion. For example, it classifies the emotion as positive, negative, or neutral based on the content and wording of the query. The recognized emotion is then used as an important parameter when generating a response.
[1260] Next, we will explain data retrieval. The server searches for the necessary information from the employee database based on the analysis results of the NLP engine and emotion engine. For example, it retrieves "Mr. Tanaka's schedule for this week." This search uses an SQL query to efficiently extract information from the database.
[1261] Next, we will explain how to generate a response message. The server generates an appropriate response message based on the data obtained through the search and the recognized emotion. For example, if Tanaka's schedule is checked and the emotion is positive, a message such as "Tanaka-san, you have a great schedule this week! Have fun!" is generated. A preset template is used to generate the response message, and text is dynamically generated based on it.
[1262] Furthermore, we will explain how to store emotion history. The server stores the recognized user emotions in an emotion history database. This emotion history is used to generate future responses and improve the user experience.
[1263] Finally, we will explain how to display the response. The server sends the generated response message to the device. The device displays this message on its user interface so that the user can check it. Specifically, it is displayed on the chat screen of a web browser or mobile app.
[1264] Specific examples include the following:
[1265] Example 1: Want to know the responsibilities of employees?
[1266] "What is Sato-san's responsibility in the marketing department?"
[1267] Example 2: You want to know who to talk to
[1268] "Who should I contact for general system inquiries?"
[1269] In this way, the system of the present invention takes into account the user's emotions and generates more flexible and effective response messages, thereby improving the quality and efficiency of internal communications.
[1270] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1271] Step 1:
[1272] Initial Setup
[1273] The server creates an employee database containing user authentication information and permission settings, and stores it in cloud storage. This database also stores employee names, departments, positions, and responsibilities, as well as user emotional histories.
[1274] Input: User information, authentication information, configuration data for the emotion engine and natural language processing engine.
[1275] Output: Employee database stored in cloud storage. Pre-configured emotion engine and natural language processing engine.
[1276] Specific operation: Build a database using AWS RDS or Google Cloud SQL and integrate with IBM Watson's Tone Analyzer and SpaCy, as well as Google Cloud Natural Language API.
[1277] Step 2:
[1278] User Authentication
[1279] The user accesses the login screen using the terminal and enters the user ID and password.
[1280] The terminal transmits the entered authentication information to the server.
[1281] The server checks the authentication information, and if it is valid, authenticates the user and checks the permissions. If authentication is confirmed, it sets the access rights for the user.
[1282] Input: User ID, Password.
[1283] Output: Authentication result, user permission settings.
[1284] Specific operation: Encrypts data using the HTTPS protocol and performs user authentication using LDAP or OAuth 2.0.
[1285] Step 3:
[1286] Entering and parsing a query
[1287] Users enter natural language queries into the chatbot's interface, for example, "What are Tanaka-san's plans for this week?"
[1288] The terminal sends this query to the server.
[1289] The server sends the received query to a natural language processing engine (NLP engine), which analyzes the query, extracts keywords (such as "Tanaka-san" or "this week's schedule"), understands the context, and identifies the required information.
[1290] Input: The user's natural language query.
[1291] Output: Extracted keywords and identified information.
[1292] Specific behavior: Queries are sent using the HTTPS protocol and parsed using SpaCy or the Google Cloud Natural Language API.
[1293] Step 4:
[1294] Emotion recognition
[1295] The server passes the parsed query to the emotion engine to recognize the user's emotion, classifying it as positive, negative, or neutral based on the content and wording of the query.
[1296] Input: The parsed query.
[1297] Output: Perceived user sentiment (positive, negative, neutral, etc.).
[1298] Specific behavior: Recognize emotions using IBM Watson's Tone Analyzer.
[1299] Step 5:
[1300] Searching for Data
[1301] The server searches the employee database for relevant information based on the analysis results of the NLP engine and emotion engine. For example, it retrieves "Mr. Tanaka's schedule for this week."
[1302] Input: Analysis results (keywords, context information), recognized emotions.
[1303] Output: Search results (employee information).
[1304] Specific behavior: Uses SQL queries to retrieve required information from a database.
[1305] Step 6:
[1306] Generating a response message
[1307] The server generates a response message for the user based on the acquired data and the recognized emotion. For example, if the emotion is positive, the response message may be adjusted to say, "Tanaka's schedule has been confirmed. Tanaka has a fulfilling schedule this week!"
[1308] Input: Acquired employee information, perceived emotions.
[1309] Output: The generated response message.
[1310] What it does: Dynamically generate text messages using pre-defined templates.
[1311] Step 7:
[1312] Emotion history storage
[1313] The server stores the recognized user emotions in an emotion history database, which helps in generating future responses.
[1314] Input: Perceived user emotion.
[1315] Output: History stored in the emotion history database.
[1316] Specific operation: Emotion history information is added to the database and managed as a user profile.
[1317] Step 8:
[1318] Viewing the response
[1319] The server sends the generated response message to the terminal.
[1320] The terminal displays this message on the user interface so that the user can confirm it.
[1321] Input: The generated response message.
[1322] Output: The message displayed on the user's terminal.
[1323] Specific behavior: Displays a message on the chat screen of a web browser or mobile app.
[1324] (Application example 2)
[1325] 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."
[1326] Conventional employee information search systems simply analyze queries entered by users and retrieve appropriate information, resulting in mechanical and uniform responses, leaving a need for flexible responses that take user emotions into account. Furthermore, in factories and other workplaces, efficient and emotional feedback is important when giving work instructions, and a system that can meet these needs is needed.
[1327] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[1328] In this invention, the server includes means for receiving a query in natural language input by a user to a terminal, means for analyzing the query and retrieving appropriate information from a database based on the analysis result, means for generating a response message based on the retrieved information, means for displaying the response message on the user's terminal, means for recognizing the user's emotion and adjusting the response message based on the recognized emotion, means for saving the user's emotion history and using it to generate future response messages, and means for causing the work instructing robot to perform specific tasks in accordance with the user's emotion. This makes it possible to provide flexible and effective response messages and work instructions while taking the user's emotion into consideration.
[1329] A "query" refers to a natural language inquiry or instruction that a user enters into a system.
[1330] A "natural language processing engine" is a software engine that analyzes natural language text entered by a user and understands its meaning.
[1331] A "database" refers to a collection of information that is organized, stored, and managed so that it can be easily searched and retrieved.
[1332] A "response message" refers to a response or feedback from the system to a query entered by a user.
[1333] "Emotion recognition" refers to the process of detecting a user's emotional state (positive, negative, neutral, etc.) from the query they enter and their behavior during that time.
[1334] "Emotion history" refers to data that records and saves a user's emotional state in past queries and response messages.
[1335] A "work instruction robot" refers to a mechanical device that performs specific tasks based on user instructions.
[1336] "Server" refers to a central computer system that performs processes such as query analysis, data acquisition, emotion recognition, and response message generation.
[1337] This invention is a system that analyzes natural language queries entered by users, acquires information, and generates a response message. It also has the ability to recognize the user's emotions and adjust the response message based on those emotions.
[1338] The system consists of the following elements:
[1339] 1. Terminal: A device (PC, smartphone, tablet, etc.) through which a user inputs queries. Users access the system through the terminal to issue work instructions or make inquiries about information.
[1340] 2. Server: This is the central computer system that handles query analysis, data acquisition, emotion recognition, response message generation, etc. The server uses the following main software:
[1341] Natural language processing engines: Used to parse queries entered by users. Examples of such engines include the Python libraries NLTK (Natural Language Toolkit) and TextBlob.
[1342] Emotion recognition engine: Used to identify user emotions. NLTK's SentimentIntensityAnalyzer is an example.
[1343] Database: A disk resource for organizing, storing, and searching information. The database stores employee information and emotion history.
[1344] Specifically, a user inputs a natural language query through a terminal. For example, they input an instruction such as "Transport the next part." This query is sent to the server and analyzed by a natural language processing engine. Based on the keywords and contextual information obtained from the analysis, the server retrieves the appropriate information from a database.
[1345] Next, the emotion recognition engine recognizes emotions from the user's query. For example, if the user is impatient, the emotion is classified as positive, negative, or neutral. Based on this emotion information, the server adjusts the response message. For example, if the emotion is negative, the server generates a response message such as "Working has started. Please wait."
[1346] The generated response message is sent back to the terminal and displayed to the user. Furthermore, the user's emotion history is stored in a database and used to generate future response messages.
[1347] This system can also be applied to robots that provide work instructions in factories. The robots perform specific tasks (such as transporting parts or checking inventory) based on instructions received from a server, and provide emotional feedback.
[1348] As a concrete example, consider the case where a user inputs "Deliver the next part" into the terminal. This instruction is analyzed by the server, and if the emotion is determined to be positive, the robot will provide feedback such as "Delivering the next part. Progressing smoothly!"
[1349] Example prompt for a generative AI model:
[1350] Give the following command to your emotion-aware work instruction robot: "Deliver the next part." Recognize the user's emotion as positive and generate appropriate feedback.
[1351] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1352] Step 1:
[1353] A user enters a natural language query into a terminal, for example, "deliver the next part."
[1354] Input: A natural language query entered by a user.
[1355] Output: The entered query is saved in text format on the terminal.
[1356] Step 2:
[1357] The terminal transmits the query entered by the user to the server.
[1358] Input: The natural language query entered in step 1.
[1359] Output: The query is sent to the server.
[1360] Step 3:
[1361] The server analyzes the received query using a natural language processing engine (NLTK or TextBlob).
[1362] Input: A natural language query sent from the device.
[1363] Data processing: Query context analysis, keyword extraction.
[1364] Output: Keywords and context information as analysis results.
[1365] Step 4:
[1366] Based on the analysis results, the server retrieves appropriate information from the database, such as parts information and inventory status.
[1367] Input: Parsed keywords and context information.
[1368] Data processing: database search.
[1369] Output: Relevant information retrieved from the database.
[1370] Step 5:
[1371] The server uses an emotion recognition engine (NLTK's SentimentIntensityAnalyzer) to recognize emotions from the user's query.
[1372] Input: A natural language query.
[1373] Data operations: Sentiment analysis (positive, negative, neutral classification).
[1374] Output: Sentiment classification result.
[1375] Step 6:
[1376] The server generates a response message based on the acquired information and the emotion classification results.
[1377] Input: Information retrieved from the database and emotion recognition results.
[1378] Data processing: Response message generation.
[1379] Output: The generated response message.
[1380] Step 7:
[1381] The server stores the generated response message and the user's emotion history, which is used to respond to future queries.
[1382] Input: Response message and sentiment classification result.
[1383] Data storage: Storage in emotion history database.
[1384] Output: Updated emotion history database.
[1385] Step 8:
[1386] The terminal displays the response message sent from the server on the user interface.
[1387] Input: The response message from the server.
[1388] Output: The response message displayed in the user interface.
[1389] Step 9:
[1390] The robot receives instructions from the server and executes specific tasks. It also provides feedback based on the user's emotions.
[1391] Input: Specific work instructions from the server.
[1392] Output: Work performed and feedback.
[1393] 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.
[1394] 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.
[1395] 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.
[1396] [Fourth embodiment]
[1397] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[1398] 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.
[1399] 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).
[1400] 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.
[1401] 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.
[1402] 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).
[1403] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[1404] 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.
[1405] 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.
[1406] 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.
[1407] 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.
[1408] 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.
[1409] 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."
[1410] The present invention provides a system for quickly and accurately searching and acquiring employee information. The following describes the specific program processing and examples.
[1411] Overall system flow
[1412] 1. Initial Setup
[1413] The server builds a database of all company employees and stores it in cloud storage.
[1414] The database contains information such as employee names, departments, positions, and responsibilities.
[1415] The server will have appropriate backups and security settings to strengthen data security and access restrictions.
[1416] 2. User Authentication
[1417] The user accesses the system from a terminal and enters their user ID and password on the login screen.
[1418] The terminal transmits the entered authentication information to the server.
[1419] The server checks the authentication information and allows access if it is correct. It also checks the user's privileges and allows only authorized functions to be used.
[1420] 3. Entering and parsing a query
[1421] Users enter natural language queries into the chatbot's interface, for example, "What is the responsibility of Person B in Department A?"
[1422] The terminal receives this query and sends it to the server.
[1423] The server uses a natural language processing engine to analyze the query, extracting keywords, understanding the context, and identifying the information need.
[1424] 4. Searching for data
[1425] The server searches the employee database for relevant information based on the analysis results. For example, it retrieves information about "Mr. B in Department A."
[1426] If the required information is found, the information is acquired and the next step is carried out.
[1427] 5. Generating a Response Message
[1428] The server generates a response message to the user based on the information it retrieves. For example, it creates a message that reads, "Mr. B is in charge of customer service."
[1429] 6. Displaying the Response
[1430] The server sends the generated message to the terminal.
[1431] The terminal displays this message on the user interface and presents it in a form that is easy for the user to understand.
[1432] Example
[1433] Example 1: Want to know the responsibilities of employees?
[1434] 1. The user types into the terminal, "What is the responsibility of Mr. B in Department A?"
[1435] 2. The device sends a query to the server.
[1436] 3. The server uses a natural language processing engine to identify "Department A" and "Mr. B" and searches for corresponding information in the employee database.
[1437] 4. The server obtains the search result "Mr. B is in charge of customer service."
[1438] 5. The server generates a response message stating, "Mr. B is in charge of customer service," and sends it to the terminal.
[1439] 6. The terminal displays this message on its user interface.
[1440] Example 2: When you want to know who to talk to
[1441] 1. The user types "Tell me who's in charge of marketing" into the terminal.
[1442] 2. The device sends a query to the server.
[1443] 3. The server analyzes "marketing manager" as a keyword and searches for corresponding information in the employee database.
[1444] 4. The server obtains the relevant information: "Mr. C is in charge of marketing."
[1445] 5. The server generates a response message stating "Mr. C is in charge of marketing" and sends it to the terminal.
[1446] 6. The terminal displays this message on its user interface.
[1447] The system of the present invention quickly and accurately retrieves and displays necessary in-house information based on a simple query input by the user.
[1448] The processing flow will be explained below.
[1449] Step 1:
[1450] A user accesses a terminal and enters a user ID and password to log in to the system.
[1451] Step 2:
[1452] The terminal transmits the input authentication information to the server.
[1453] Step 3:
[1454] The server checks the authentication information sent and allows the user access if it is correct. It also checks the user's authority and limits the functions that can be used.
[1455] Step 4:
[1456] Users enter natural language queries into the chatbot's interface, for example, "What are the responsibilities of Tanaka-san in the marketing department?"
[1457] Step 5:
[1458] The terminal sends this query to the chatbot's system.
[1459] Step 6:
[1460] The server uses a natural language processing engine to analyze the query, extracting keywords like "Marketing Department," "Tanaka-san," and "Responsibilities," and understands the context.
[1461] Step 7:
[1462] The server searches the employee database for the relevant employee information based on the analyzed query. Specifically, it retrieves information about "Mr. Tanaka from the Marketing Department."
[1463] Step 8:
[1464] The server retrieves relevant information from the employee database as a search result. For example, it retrieves information such as "Mr. Tanaka is in charge of market research."
[1465] Step 9:
[1466] The server generates a response message to convey to the user based on this acquired information, for example, "Mr. Tanaka is in charge of market research."
[1467] Step 10:
[1468] The server sends the generated response message to the terminal.
[1469] Step 11:
[1470] The terminal displays this response message on the user interface so that the user can confirm it.
[1471] Step 12:
[1472] The user reviews the displayed information and makes additional inquiries if necessary.
[1473] Example 1
[1474] 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."
[1475] Searching and retrieving employee information within a company is extremely important, but conventional systems can delay information retrieval or provide incorrect information. Furthermore, there are issues with insufficient user authentication and inaccuracies in natural language processing, which reduce business efficiency. The present invention aims to solve these problems and enable fast and accurate information retrieval.
[1476] 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.
[1477] In this invention, the server includes means for receiving a natural language query entered by a user into a terminal, means for analyzing the query and retrieving appropriate information from a person database based on the analysis result, means for generating a response message based on the retrieved information, means for displaying the response message on the user's terminal, means for receiving and confirming authentication information sent from the terminal, means for checking user authority based on the authentication information and setting the user so that only permitted functions can be used, means for using a natural language processing engine for analyzing the natural language query, and means for sending a response message to the terminal based on the retrieved information. This enables a user to quickly and accurately retrieve necessary internal company information by simply entering a query.
[1478] "User" refers to an individual or organizational member who accesses the system to retrieve information.
[1479] "Terminal" refers to an electronic device used by a user to input queries and display response messages.
[1480] A "query" refers to a question or request in natural language that a user enters into a terminal.
[1481] "Server" refers to a central device that receives queries from users, analyzes them, retrieves appropriate information, generates response messages, and sends them to terminals.
[1482] A "natural language processing engine" refers to software that analyzes input natural language queries and extracts important keywords and context.
[1483] A "person database" refers to a database that stores information about employees, including data such as name, department, position, and responsibilities.
[1484] "Authentication Information" refers to the user ID, password, or other authentication means entered by a user to access the system.
[1485] "User privileges" refer to the range of operations that an authenticated user can perform within the system and the information that they can access.
[1486] "Response message" refers to a message containing an answer that a server generates based on information retrieved in response to a user's query.
[1487] The present invention provides a system for quickly and accurately searching and acquiring employee information. The following describes the processing contents of a specific program and an example of the system.
[1488] Overall system configuration
[1489] This system consists of a user, a terminal, and a server. The user accesses the system through the terminal and inputs a query in natural language. The terminal sends this query to the server. The server analyzes the query, searches a database for the required information, and generates a response message to send to the terminal.
[1490] Specific names of the hardware and software to be used
[1491] 1. Cloud storage: Use Amazon RDS from Amazon Web Services (AWS).
[1492] 2. Authorization protocol: Use OAuth 2.0.
[1493] 3. Natural Language Processing Engine: Use Google's Dialogflow or Microsoft's LUIS.
[1494] 4. Communication protocol: Use HTTPS.
[1495] Program processing
[1496] The server first builds a database of all company employees and stores it in cloud storage. The database includes information such as employee name, department, position, and responsibilities. The server then performs appropriate backups and security settings to ensure data integrity and restrict access.
[1497] A user accesses the system from a terminal and enters their user ID and password on the login screen. The terminal sends the entered authentication information to the server. The server verifies the received authentication information, and if authentication is successful, issues a session ID to the user and sends it to the terminal. Authenticated users can only use permitted functions.
[1498] The user then inputs a natural language query into the chatbot's interface. For example, "What is the responsibility of Person B in Department A?" The device then sends this query to the server. The server then sends the query to a natural language processing engine, which extracts keywords, understands the context, and identifies information.
[1499] Based on the analysis results, the server specifies the appropriate tables and columns in the employee database and searches for the relevant information using an SQL query. For example, if the analysis results include "Department A" and "Mr. B," the server executes a query such as "SELECT Job Responsibilities FROM Employee Information WHERE Department = 'Department A' AND Name = 'Mr. B'."
[1500] After obtaining the search results, the server generates a response message to the user based on the search results. For example, if the search result is "customer service," the server generates a response message saying, "Mr. B is in charge of customer service."
[1501] The server generates a response message and sends it to the terminal, which displays the message on its user interface to provide the user with the result.
[1502] Specific examples
[1503] Example 1: Want to know the responsibilities of employees?
[1504] 1. The user types into the terminal, "What is the responsibility of Mr. B in Department A?" and sends it.
[1505] 2. The device sends a query to the server.
[1506] 3. The server uses a natural language processing engine to analyze the query and identify "Department A" and "Mr. B."
[1507] 4. The server searches for information about "Mr. B" in the employee database.
[1508] 5. The server obtains the search result "Mr. B is in charge of customer service."
[1509] 6. The server generates a message saying "Mr. B is in charge of customer service" and sends it to the terminal.
[1510] 7. The terminal displays this message on its user interface.
[1511] Example 2: When you want to know who to talk to
[1512] 1. The user types "Tell me who's in charge of marketing" into the terminal and sends it.
[1513] 2. The device sends a query to the server.
[1514] 3. The server analyzes "marketing manager" as a keyword and searches for corresponding information in the employee database.
[1515] 4. The server receives the information that "Mr. C is in charge of marketing."
[1516] 5. The server generates a message saying "Mr. C is in charge of marketing" and sends it to the terminal.
[1517] 6. The terminal displays this message on its user interface.
[1518] In this way, the system of the present invention can quickly and accurately obtain and display necessary information within a company based on a simple query input by the user.
[1519] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1520] Step 1: Initial Setup
[1521] The server first creates the necessary tables to build a database of all employees. The input data includes a dataset of employee names, departments, positions, and responsibilities. The database is stored in cloud storage (such as Amazon RDS). Specific operations include creating tables and importing data using SQL commands. Furthermore, backups and security settings are implemented to strengthen data integrity and access restrictions. This ensures that employee data is stored safely and efficiently.
[1522] Step 2: User authentication
[1523] A user accesses the system from a terminal and a login screen is displayed. The user enters a user ID and password and clicks the submit button. The terminal sends this authentication information to the server via the HTTPS protocol. The server compares the received authentication information with the information in the database, and if authentication is successful, generates a session ID and sends it to the terminal. This authenticates the user and allows them to access the system.
[1524] Step 3: Enter your query
[1525] The user inputs a query in natural language into the chatbot interface. For example, they might type, "Tell me who's in charge of marketing." The input query is confirmed by clicking the send button. The device receives this query and sends it to the server.
[1526] Step 4: Parsing the query
[1527] The server sends the received natural language query to a natural language processing engine such as Google's Dialogflow or Microsoft's LUIS. The input is the natural language query. The natural language processing engine analyzes the query, extracts keywords, understands the context, and generates analysis results. The output is important keywords and contextual information.
[1528] Step 5: Search for data
[1529] The server searches for the relevant information from the employee database based on the analysis results. The analysis results and the employee database are used as input. The server generates an SQL query and executes a query such as "SELECT Job Role FROM Employee Information WHERE Department = 'Marketing'". The output is the relevant employee information.
[1530] Step 6: Generate a response message
[1531] The server generates a response message based on the search results. The search results and a template are used as input. For example, if the search result is "Mr. C is in charge of marketing," the server generates a response message that reads, "Mr. C is in charge of marketing."
[1532] Step 7: Send a response message
[1533] The server sends the generated response message to the terminal. The generated response message and the destination terminal information are used as input. The terminal displays the received message on the chatbot's UI.
[1534] Step 8: View the response
[1535] The device displays the received message on the user's screen. The input is the response message received from the server. The specific operation is to add the message to the chatbot's UI component and display it in a readable format for the user, so that the user can get an answer to their query.
[1536] (Application example 1)
[1537] 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."
[1538] In order to quickly communicate with each department and person in charge within a factory, it is important to quickly and accurately obtain information about the person in charge. However, with conventional systems, it takes time to search and obtain information, making it difficult to achieve efficient communication. There is a need for a system that can solve this problem and improve the efficiency of factory operations.
[1539] 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.
[1540] In this invention, the server includes means for receiving a query in natural language input by a user to a terminal, means for analyzing the query and retrieving appropriate information from a database based on the analysis result, means for generating a response message based on the retrieved information, means for displaying the response message on the user's terminal, and means for the robot to quickly search and retrieve employee information within the factory, thereby enabling quick and accurate information retrieval within the factory.
[1541] A "user" is an entity that operates a terminal to input queries and retrieve information on the system.
[1542] A "terminal" is an electronic device through which a user enters queries and receives responses.
[1543] A "natural language query" is a sentence in which a user enters a question or request in everyday language.
[1544] The "means for analyzing queries" refers to a mechanism that uses a natural language processing engine to understand the input query and issue instructions to the database to retrieve appropriate information.
[1545] A "database" is a collection of data in which information about employees is systematically stored.
[1546] The "means for obtaining information" is a function for searching for corresponding information from a database based on the analyzed query.
[1547] The "means for generating a response message" is a process for creating a message that serves as a response to the user based on the acquired information.
[1548] The "means for displaying on the user's terminal" is a function for displaying the generated response message on the screen of the terminal operated by the user.
[1549] A "robot" is a device that patrols a factory and searches for and acquires information.
[1550] "Factory employee information" refers to information such as the name, department, and role of each employee working in the factory.
[1551] "Quick search and retrieval" is the process of quickly finding information about a specific employee and providing it to the robot as needed.
[1552] The present invention provides a system that allows a robot to quickly and accurately search and acquire employee information within a factory. The following describes the specific program processing content and an example implementation.
[1553] Overall system flow
[1554] 1. Initial Setup
[1555] The server builds a database of all factory employees and stores it in cloud storage.
[1556] The database contains information such as employee names, departments, positions, and responsibilities.
[1557] The server will have appropriate backups and security settings to strengthen data security and access restrictions.
[1558] 2. User Authentication
[1559] The robot accesses the system using a built-in tablet device and enters the user ID and password on the login screen.
[1560] The terminal transmits the entered authentication information to the server.
[1561] The server checks the authentication information and allows access if it is correct. It also checks the user's privileges and allows only authorized functions to be used.
[1562] 3. Entering and parsing a query
[1563] The robot inputs natural language queries into a built-in tablet, such as "Tell me who works in the quality control department."
[1564] The terminal receives this query and sends it to the server.
[1565] The server uses a natural language processing engine to analyze the query, extracting keywords, understanding the context, and identifying the information need.
[1566] 4. Searching for data
[1567] The server searches the employee database for relevant information based on the analysis results. For example, it retrieves information about the "Quality Control Department Personnel."
[1568] If the required information is found, the information is acquired and the next step is carried out.
[1569] 5. Generating a Response Message
[1570] The server generates a response message to the robot based on the information it retrieves. For example, it creates a message such as "Mr. D is in charge of quality control."
[1571] 6. Displaying the Response
[1572] The server sends the generated message to the terminal.
[1573] The terminal displays this message on the user interface and provides it in a form that is easy for the robot to understand.
[1574] Hardware and software used
[1575] Hardware: A tablet device installed on a patrol robot in the factory.
[1576] Software: Python or other server-based programs, natural language analysis engines such as Google Cloud Natural Language API.
[1577] Specific examples
[1578] For example, if a robot needs to find out who is in charge of quality control while on patrol, it can type "Tell me who is in charge of quality control" into the robot's tablet. This query is sent to the server and analyzed by a natural language processing engine. As a result, the relevant information is searched for in the employee database, and a response message is generated saying "Mr. D is in charge of quality control," which is displayed on the tablet.
[1579] Prompt Sentence Examples
[1580] "Tell me who is in charge of quality control."
[1581] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1582] Step 1:
[1583] Initial Setup
[1584] The server builds a database of all employees in the factory and stores it in cloud storage.
[1585] The database contains information such as employee names, departments, positions, and responsibilities.
[1586] Implement backups and security settings to strengthen data security and access restrictions.
[1587] Input: Employee information data
[1588] Output: Database
[1589] Step 2:
[1590] User Authentication
[1591] The robot accesses the system using a built-in tablet device and enters its user ID and password on the login screen.
[1592] The terminal transmits the entered authentication information to the server.
[1593] The server checks the authentication information and allows access if it is correct. It also checks the user's privileges and allows only authorized functions to be used.
[1594] Input: User ID, Password
[1595] Output: Authentication token
[1596] Step 3:
[1597] Entering and parsing a query
[1598] The robot types a natural language query into a tablet, for example, "Who is in the quality control department?"
[1599] The terminal receives this query and sends it to the server.
[1600] The server uses a natural language processing engine to analyze the query, extracting keywords, understanding the context, and identifying the information need.
[1601] Input: Natural language query
[1602] Output: Analysis results
[1603] Step 4:
[1604] Searching for Data
[1605] The server searches the employee database for relevant information based on the analysis results. For example, it retrieves information about the "Quality Control Department Personnel."
[1606] If the required information is found, the information is acquired and the next step is carried out.
[1607] Input: Analysis results
[1608] Output: Employee information
[1609] Step 5:
[1610] Generating a response message
[1611] The server generates a response message to the robot based on the information it retrieves. For example, it creates a message such as "Mr. D is in charge of quality control."
[1612] Input: Employee information
[1613] Output: Response message
[1614] Step 6:
[1615] Viewing the response
[1616] The server sends the generated message to the terminal.
[1617] The terminal displays this message on the user interface and provides it in a form that is easy for the robot to understand.
[1618] Input: Response message
[1619] Output: On-screen display
[1620] 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.
[1621] The present invention provides a system that not only analyzes natural language queries entered by users and searches for employee information, but also has the ability to recognize the user's emotions and adjust response messages based on those emotions.
[1622] Overall system flow
[1623] 1. Initial Setup
[1624] The server builds an employee database containing user authentication information and permission settings and stores it in cloud storage.
[1625] The server configures the emotion engine and sets it up to work with the natural language processing engine.
[1626] The database includes employee names, departments, positions, and responsibilities, as well as the user's emotional history.
[1627] 2. User Authentication
[1628] The user accesses the terminal and enters the user ID and password on the login screen.
[1629] The terminal transmits the input authentication information to the server.
[1630] The server checks the authentication information and allows access if it is correct. It also checks the user's authority and limits the functions that can be used.
[1631] 3. Entering and parsing a query
[1632] A user enters a natural language query into the chatbot's interface, for example, "What is Tanaka-san's schedule for this week?"
[1633] The terminal sends this query to the server.
[1634] The server uses a natural language processing engine to parse the query, which includes extracting keywords, understanding the context, and identifying the required information.
[1635] 4. Emotional Recognition
[1636] The server uses an emotion engine to recognize the user's emotion from the input query, for example, classifying emotions as positive, negative, neutral, etc.
[1637] The recognized emotion is used as a parameter to adjust the response message.
[1638] 5. Searching for data
[1639] The server searches for relevant information from the employee database based on the analysis results and the recognized emotion. For example, it retrieves "Mr. Tanaka's schedule for this week."
[1640] 6. Generating a Response Message
[1641] The server generates a response message to the user based on the information retrieved. For example, when Tanaka's schedule is confirmed, if the emotion is positive, the server will say something like "Tanaka has a fulfilling schedule this week!", and if the emotion is negative, the server will say something like "Tanaka's schedule for this week is as follows. We'll support you if you have any problems."
[1642] 7. Emotional history storage
[1643] The server stores the recognized user emotions in an emotion history database to aid in future response generation.
[1644] The emotion history is used as reference information when the user makes another inquiry.
[1645] 8. Displaying the Response
[1646] The server sends the generated response message to the terminal.
[1647] The terminal displays this response message on the user interface so that the user can confirm it.
[1648] Example
[1649] Example 1: Want to know the responsibilities of employees?
[1650] 1. The user types into the terminal, "What is Sato-san's job in the marketing department?"
[1651] 2. The device sends a query to the server.
[1652] 3. The server uses a natural language processing engine to identify "Marketing Department," "Mr. Sato," and "Job Responsibility," and searches for corresponding information.
[1653] 4. The server uses an emotion engine to recognize the emotion from the user's query (e.g., neutral).
[1654] 5. The server retrieves "Mr. Sato's responsibilities" from the employee database.
[1655] 6. Based on the information obtained, the server generates a neutral response message saying, "Mr. Sato is in charge of market research."
[1656] 7. The server stores the neutral emotion in the user's emotion history.
[1657] 8. The terminal displays the response message on the user interface.
[1658] Example 2: You want to know who to talk to
[1659] 1. The user types into the terminal, "Who should I contact for general system inquiries?"
[1660] 2. The device sends a query to the server.
[1661] 3. The server uses a natural language processing engine to identify "general system," "inquiry," and "consultation" and search for corresponding information.
[1662] 4. The server uses an emotion engine to recognize the emotion from the user's query (e.g., negative).
[1663] 5. The server retrieves the "system manager" information from the employee database.
[1664] 6. Based on the information obtained, the server generates a response message that takes negative emotions into consideration, such as, "For general system inquiries, please contact Yamada-san. If you have any problems, we will solve them immediately."
[1665] 7. The server stores negative emotions in the user's emotion history.
[1666] 8. The terminal displays the response message on the user interface.
[1667] The system of the present invention thus takes into account the user's emotions and generates more flexible and effective response messages, thereby improving the quality and efficiency of in-house communications.
[1668] The processing flow will be explained below.
[1669] Step 1:
[1670] A user accesses a terminal and enters a user ID and password to log in to the system.
[1671] Step 2:
[1672] The terminal transmits the input authentication information to the server.
[1673] Step 3:
[1674] The server checks the authentication information and allows the user access if it is correct. It also checks the user's authority and limits the functions that can be used.
[1675] Step 4:
[1676] Users input natural language queries into the chatbot interface, such as "What is Tanaka's responsibility in the marketing department?"
[1677] Step 5:
[1678] The terminal sends this query to the chatbot's system.
[1679] Step 6:
[1680] The server uses a natural language processing engine to analyze the input query, extracting keywords such as "Marketing Department," "Tanaka-san," and "job responsibilities," and also understands the context.
[1681] Step 7:
[1682] The server uses an emotion engine to recognize the user's emotion from the query, for example, "What is Tanaka-san's responsibility in the marketing department?", and identifies a neutral emotion.
[1683] Step 8:
[1684] The server searches the employee database for relevant information based on the analysis results and the recognized emotion, and retrieves information about "Mr. Tanaka from the Marketing Department."
[1685] Step 9:
[1686] The server obtains the information "Mr. Tanaka is in charge of market research" as a search result.
[1687] Step 10:
[1688] The server generates a tailored response message depending on the recognized emotion, for example, "Mr. Tanaka is in charge of market research" in the case of a neutral emotion.
[1689] Step 11:
[1690] The server stores the identified emotion information in the user's emotion history database so that future queries can refer to the emotion history to provide more appropriate responses.
[1691] Step 12:
[1692] The server sends the generated response message to the terminal.
[1693] Step 13:
[1694] The terminal displays this response message on the user interface so that the user can confirm it.
[1695] Step 14:
[1696] The user reviews the displayed information and makes additional inquiries if necessary.
[1697] Example 2
[1698] 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."
[1699] Conventional employee information search systems have difficulty generating responses that take user emotions into account, which hinders the quality of the user experience. Furthermore, there is a lack of a system for quickly providing accurate employee information, which reduces the efficiency of internal communication.
[1700] 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.
[1701] In this invention, the server includes means for receiving a query in natural language entered by a user into a terminal, means for analyzing the query and retrieving appropriate information from an employee database based on the analysis results, means for generating a response message based on the retrieved information, means for displaying the response message on the user's terminal, means for recognizing the user's emotion from the query and adjusting the response message based on the recognized emotion, and means for saving the recognized emotion in an emotion history database. This enables the generation of flexible and effective response messages that take the user's emotion into consideration, thereby enabling the rapid and accurate provision of employee information and improving the quality and efficiency of internal communication.
[1702] "User" refers to a person who utilizes the system to enter queries and obtain information.
[1703] "Terminal" refers to the device on which a user enters a query and checks the response, such as a PC or smartphone.
[1704] A "natural language query" refers to a question or request that a user enters into a system in everyday language.
[1705] A "server" refers to a computer system that analyzes queries, obtains information, generates response messages, recognizes emotions, and so on.
[1706] An "employee database" refers to data storage that stores information such as employee names, departments, positions, and responsibilities.
[1707] A "natural language processing engine" refers to a software component that analyzes natural language queries, extracts keywords, and understands context.
[1708] "Emotion Engine" refers to a software component for recognizing and classifying emotions from user queries.
[1709] "Emotion history database" refers to data storage that stores historical information about a user's emotions.
[1710] "Response message" refers to a text message that is generated based on the acquired information and provided to the user.
[1711] "Authentication information" refers to data such as a user ID and password used to identify a user.
[1712] "Authority settings" refers to setting information that controls the range of operations and functions permitted to a user.
[1713] The present invention provides a system that not only analyzes natural language queries entered by users and searches for employee information, but also has the ability to recognize the user's emotions and adjust response messages based on those emotions.
[1714] First, we will explain the initial setup of this system. The server builds an employee database that includes user authentication information and permission settings, and stores it in cloud storage. This database includes employee names, departments, positions, and responsibilities, as well as user emotion history. Amazon Web Services (AWS) Relational Database Service (RDS) and Google Cloud SQL are used for storage. The server also configures an emotion engine and a natural language processing engine (NLP engine) and sets them up to work together. SpaCy and Google Cloud Natural Language API are used as NLP engines, and IBM Watson's Tone Analyzer is used as the emotion engine.
[1715] Next, we will explain the user authentication process. The user accesses the login screen using a device (for example, a PC or smartphone) and enters their user ID and password. The device then sends the entered authentication information to the server. This communication uses the HTTPS protocol to ensure data security. The server checks the authentication information, and if it is valid, authenticates the user through the server's internal authentication system (for example, LDAP or OAuth 2.0), confirms the user's permissions, and limits the functions that can be used.
[1716] Next, we will explain query input and analysis. The user inputs a natural language query, such as "Tanaka-san, what's on the agenda for this week?" into the chatbot's interface (displayed on a web or mobile application). The device sends this query to the server. Again, communication uses an encrypted protocol (e.g., HTTPS). The server then sends the received query to the NLP engine. The NLP engine analyzes the query, extracting keywords (e.g., "Tanaka-san," "what's on the agenda for this week") and understanding the context to identify the required information.
[1717] Next, we will explain emotion recognition. The server passes the parsed query to the emotion engine to recognize the user's emotion. For example, it classifies the emotion as positive, negative, or neutral based on the content and wording of the query. The recognized emotion is then used as an important parameter when generating a response.
[1718] Next, we will explain data retrieval. The server searches for the necessary information from the employee database based on the analysis results of the NLP engine and emotion engine. For example, it retrieves "Mr. Tanaka's schedule for this week." This search uses an SQL query to efficiently extract information from the database.
[1719] Next, we will explain how to generate a response message. The server generates an appropriate response message based on the data obtained through the search and the recognized emotion. For example, if Tanaka's schedule is checked and the emotion is positive, a message such as "Tanaka-san, you have a great schedule this week! Have fun!" is generated. A preset template is used to generate the response message, and text is dynamically generated based on it.
[1720] Furthermore, we will explain how to store emotion history. The server stores the recognized user emotions in an emotion history database. This emotion history is used to generate future responses and improve the user experience.
[1721] Finally, we will explain how to display the response. The server sends the generated response message to the device. The device displays this message on its user interface so that the user can check it. Specifically, it is displayed on the chat screen of a web browser or mobile app.
[1722] Specific examples include the following:
[1723] Example 1: Want to know the responsibilities of employees?
[1724] "What is Sato-san's responsibility in the marketing department?"
[1725] Example 2: You want to know who to talk to
[1726] "Who should I contact for general system inquiries?"
[1727] In this way, the system of the present invention takes into account the user's emotions and generates more flexible and effective response messages, thereby improving the quality and efficiency of internal communications.
[1728] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1729] Step 1:
[1730] Initial Setup
[1731] The server creates an employee database containing user authentication information and permission settings, and stores it in cloud storage. This database also stores employee names, departments, positions, and responsibilities, as well as user emotional histories.
[1732] Input: User information, authentication information, configuration data for the emotion engine and natural language processing engine.
[1733] Output: Employee database stored in cloud storage. Pre-configured emotion engine and natural language processing engine.
[1734] Specific operation: Build a database using AWS RDS or Google Cloud SQL and integrate with IBM Watson's Tone Analyzer and SpaCy, as well as Google Cloud Natural Language API.
[1735] Step 2:
[1736] User Authentication
[1737] The user accesses the login screen using the terminal and enters the user ID and password.
[1738] The terminal transmits the entered authentication information to the server.
[1739] The server checks the authentication information, and if it is valid, authenticates the user and checks the permissions. If authentication is confirmed, it sets the access rights for the user.
[1740] Input: User ID, Password.
[1741] Output: Authentication result, user permission settings.
[1742] Specific operation: Encrypts data using the HTTPS protocol and performs user authentication using LDAP or OAuth 2.0.
[1743] Step 3:
[1744] Entering and parsing a query
[1745] Users enter natural language queries into the chatbot's interface, for example, "What are Tanaka-san's plans for this week?"
[1746] The terminal sends this query to the server.
[1747] The server sends the received query to a natural language processing engine (NLP engine), which analyzes the query, extracts keywords (such as "Tanaka-san" or "this week's schedule"), understands the context, and identifies the required information.
[1748] Input: The user's natural language query.
[1749] Output: Extracted keywords and identified information.
[1750] Specific behavior: Queries are sent using the HTTPS protocol and parsed using SpaCy or the Google Cloud Natural Language API.
[1751] Step 4:
[1752] Emotion recognition
[1753] The server passes the parsed query to the emotion engine to recognize the user's emotion, classifying it as positive, negative, or neutral based on the content and wording of the query.
[1754] Input: The parsed query.
[1755] Output: Perceived user sentiment (positive, negative, neutral, etc.).
[1756] Specific behavior: Recognize emotions using IBM Watson's Tone Analyzer.
[1757] Step 5:
[1758] Searching for Data
[1759] The server searches the employee database for relevant information based on the analysis results of the NLP engine and emotion engine. For example, it retrieves "Mr. Tanaka's schedule for this week."
[1760] Input: Analysis results (keywords, context information), recognized emotions.
[1761] Output: Search results (employee information).
[1762] Specific behavior: Uses SQL queries to retrieve required information from a database.
[1763] Step 6:
[1764] Generating a response message
[1765] The server generates a response message for the user based on the acquired data and the recognized emotion. For example, if the emotion is positive, the response message may be adjusted to say, "Tanaka's schedule has been confirmed. Tanaka has a fulfilling schedule this week!"
[1766] Input: Acquired employee information, perceived emotions.
[1767] Output: The generated response message.
[1768] What it does: Dynamically generate text messages using pre-defined templates.
[1769] Step 7:
[1770] Emotion history storage
[1771] The server stores the recognized user emotions in an emotion history database, which helps in generating future responses.
[1772] Input: Perceived user emotion.
[1773] Output: History stored in the emotion history database.
[1774] Specific operation: Emotion history information is added to the database and managed as a user profile.
[1775] Step 8:
[1776] Viewing the response
[1777] The server sends the generated response message to the terminal.
[1778] The terminal displays this message on the user interface so that the user can confirm it.
[1779] Input: The generated response message.
[1780] Output: The message displayed on the user's terminal.
[1781] Specific behavior: Displays a message on the chat screen of a web browser or mobile app.
[1782] (Application example 2)
[1783] 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."
[1784] Conventional employee information search systems simply analyze queries entered by users and retrieve appropriate information, resulting in mechanical and uniform responses, leaving a need for flexible responses that take user emotions into account. Furthermore, in factories and other workplaces, efficient and emotional feedback is important when giving work instructions, and a system that can meet these needs is needed.
[1785] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[1786] In this invention, the server includes means for receiving a query in natural language input by a user to a terminal, means for analyzing the query and retrieving appropriate information from a database based on the analysis result, means for generating a response message based on the retrieved information, means for displaying the response message on the user's terminal, means for recognizing the user's emotion and adjusting the response message based on the recognized emotion, means for saving the user's emotion history and using it to generate future response messages, and means for causing the work instructing robot to perform specific tasks in accordance with the user's emotion. This makes it possible to provide flexible and effective response messages and work instructions while taking the user's emotion into consideration.
[1787] A "query" refers to a natural language inquiry or instruction that a user enters into a system.
[1788] A "natural language processing engine" is a software engine that analyzes natural language text entered by a user and understands its meaning.
[1789] A "database" refers to a collection of information that is organized, stored, and managed so that it can be easily searched and retrieved.
[1790] A "response message" refers to a response or feedback from the system to a query entered by a user.
[1791] "Emotion recognition" refers to the process of detecting a user's emotional state (positive, negative, neutral, etc.) from the query they enter and their behavior during that time.
[1792] "Emotion history" refers to data that records and saves a user's emotional state in past queries and response messages.
[1793] A "work instruction robot" refers to a mechanical device that performs specific tasks based on user instructions.
[1794] "Server" refers to a central computer system that performs processes such as query analysis, data acquisition, emotion recognition, and response message generation.
[1795] This invention is a system that analyzes natural language queries entered by users, acquires information, and generates a response message. It also has the ability to recognize the user's emotions and adjust the response message based on those emotions.
[1796] The system consists of the following elements:
[1797] 1. Terminal: A device (PC, smartphone, tablet, etc.) through which a user inputs queries. Users access the system through the terminal to issue work instructions or make inquiries about information.
[1798] 2. Server: This is the central computer system that handles query analysis, data acquisition, emotion recognition, response message generation, etc. The server uses the following main software:
[1799] Natural language processing engines: Used to parse queries entered by users. Examples of such engines include the Python libraries NLTK (Natural Language Toolkit) and TextBlob.
[1800] Emotion recognition engine: Used to identify user emotions. NLTK's SentimentIntensityAnalyzer is an example.
[1801] Database: A disk resource for organizing, storing, and searching information. The database stores employee information and emotion history.
[1802] Specifically, a user inputs a natural language query through a terminal. For example, they input an instruction such as "Transport the next part." This query is sent to the server and analyzed by a natural language processing engine. Based on the keywords and contextual information obtained from the analysis, the server retrieves the appropriate information from a database.
[1803] Next, the emotion recognition engine recognizes emotions from the user's query. For example, if the user is impatient, the emotion is classified as positive, negative, or neutral. Based on this emotion information, the server adjusts the response message. For example, if the emotion is negative, the server generates a response message such as "Working has started. Please wait."
[1804] The generated response message is sent back to the terminal and displayed to the user. Furthermore, the user's emotion history is stored in a database and used to generate future response messages.
[1805] This system can also be applied to robots that provide work instructions in factories. The robots perform specific tasks (such as transporting parts or checking inventory) based on instructions received from a server, and provide emotional feedback.
[1806] As a concrete example, consider the case where a user inputs "Deliver the next part" into the terminal. This instruction is analyzed by the server, and if the emotion is determined to be positive, the robot will provide feedback such as "Delivering the next part. Progressing smoothly!"
[1807] Example prompt for a generative AI model:
[1808] Give the following command to your emotion-aware work instruction robot: "Deliver the next part." Recognize the user's emotion as positive and generate appropriate feedback.
[1809] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1810] Step 1:
[1811] A user enters a natural language query into a terminal, for example, "deliver the next part."
[1812] Input: A natural language query entered by a user.
[1813] Output: The entered query is saved in text format on the terminal.
[1814] Step 2:
[1815] The terminal transmits the query entered by the user to the server.
[1816] Input: The natural language query entered in step 1.
[1817] Output: The query is sent to the server.
[1818] Step 3:
[1819] The server analyzes the received query using a natural language processing engine (NLTK or TextBlob).
[1820] Input: A natural language query sent from the device.
[1821] Data processing: Query context analysis, keyword extraction.
[1822] Output: Keywords and context information as analysis results.
[1823] Step 4:
[1824] Based on the analysis results, the server retrieves appropriate information from the database, such as parts information and inventory status.
[1825] Input: Parsed keywords and context information.
[1826] Data processing: database search.
[1827] Output: Relevant information retrieved from the database.
[1828] Step 5:
[1829] The server uses an emotion recognition engine (NLTK's SentimentIntensityAnalyzer) to recognize emotions from the user's query.
[1830] Input: A natural language query.
[1831] Data operations: Sentiment analysis (positive, negative, neutral classification).
[1832] Output: Sentiment classification result.
[1833] Step 6:
[1834] The server generates a response message based on the acquired information and the emotion classification results.
[1835] Input: Information retrieved from the database and emotion recognition results.
[1836] Data processing: Response message generation.
[1837] Output: The generated response message.
[1838] Step 7:
[1839] The server stores the generated response message and the user's emotion history, which is used to respond to future queries.
[1840] Input: Response message and sentiment classification result.
[1841] Data storage: Storage in emotion history database.
[1842] Output: Updated emotion history database.
[1843] Step 8:
[1844] The terminal displays the response message sent from the server on the user interface.
[1845] Input: The response message from the server.
[1846] Output: The response message displayed in the user interface.
[1847] Step 9:
[1848] The robot receives instructions from the server and executes specific tasks. It also provides feedback based on the user's emotions.
[1849] Input: Specific work instructions from the server.
[1850] Output: Work performed and feedback.
[1851] 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.
[1852] 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.
[1853] 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.
[1854] 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.
[1855] 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.
[1856] 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.
[1857] 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).
[1858] 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.
[1859] 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."
[1860] 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.
[1861] 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).
[1862] 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.
[1863] 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.
[1864] 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.
[1865] 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.
[1866] 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.
[1867] 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.
[1868] 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.
[1869] 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.
[1870] 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.
[1871] 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.
[1872] The following is further disclosed regarding the above embodiment.
[1873] (Claim 1)
[1874] means for receiving a natural language query entered by a user into the terminal;
[1875] means for analyzing the query and retrieving appropriate information from an employee database based on the analysis result;
[1876] means for generating a response message based on the acquired information;
[1877] means for displaying the response message on a user terminal;
[1878] A system including:
[1879] (Claim 2)
[1880] 10. The system of claim 1, further comprising: means for using a natural language processing engine to parse the query.
[1881] (Claim 3)
[1882] 10. The system of claim 1, further comprising means for performing user authentication and allowing access only to authenticated users.
[1883] "Example 1"
[1884] (Claim 1)
[1885] means for receiving a natural language query entered by a user into the terminal;
[1886] means for analyzing the query and retrieving appropriate information from a person database based on the analysis result;
[1887] means for generating a response message based on the acquired information;
[1888] means for displaying the response message on a user terminal;
[1889] means for receiving and verifying authentication information sent from the terminal;
[1890] A means of checking user privileges based on authentication information and allowing only authorized functions to be used;
[1891] a means for using a natural language processing engine to parse the natural language query;
[1892] means for transmitting a response message to the terminal based on the acquired information;
[1893] A system including:
[1894] (Claim 2)
[1895] 10. The system of claim 1, further comprising a natural language processing engine for parsing the query.
[1896] (Claim 3)
[1897] 10. The system of claim 1, further comprising means for performing user authentication and allowing access only to authenticated users.
[1898] "Application Example 1"
[1899] (Claim 1)
[1900] means for receiving a natural language query entered by a user into the terminal;
[1901] means for analyzing the query and retrieving appropriate information from a database based on the analysis result;
[1902] means for generating a response message based on the acquired information;
[1903] means for displaying the response message on a user terminal;
[1904] A means for robots to quickly search and obtain employee information within the factory,
[1905] A system including:
[1906] (Claim 2)
[1907] 10. The system of claim 1, further comprising: means for using a natural language processing engine to parse the query.
[1908] (Claim 3)
[1909] 10. The system of claim 1, further comprising means for performing user authentication and allowing access only to authenticated users.
[1910] "Example 2: Combining Emotion Engines"
[1911] (Claim 1)
[1912] means for receiving a natural language query entered by a user into the terminal;
[1913] means for analyzing the query and retrieving appropriate information from an employee database based on the analysis result;
[1914] means for generating a response message based on the acquired information;
[1915] means for displaying the response message on a user terminal;
[1916] means for recognizing a user's emotion from the query and tailoring a response message based on the recognized emotion;
[1917] means for storing the recognized emotions in an emotion history database;
[1918] A system including:
[1919] (Claim 2)
[1920] 10. The system of claim 1, further comprising: means for using a natural language processing engine to parse the query.
[1921] (Claim 3)
[1922] 10. The system of claim 1, further comprising means for performing user authentication and allowing access only to authenticated users.
[1923] "Application example 2 when combining emotion engines"
[1924] (Claim 1)
[1925] means for receiving a natural language query entered by a user into the terminal;
[1926] means for analyzing the query and retrieving appropriate information from a database based on the analysis result;
[1927] means for generating a response message based on the acquired information;
[1928] means for displaying the response message on a user terminal;
[1929] means for recognizing a user's emotion and tailoring a response message based on the recognized emotion;
[1930] A system including:
[1931] (Claim 2)
[1932] 10. The system of claim 1, further comprising: means for using a natural language processing engine to parse the query.
[1933] (Claim 3)
[1934] 10. The system of claim 1, further comprising means for performing user authentication and allowing access only to authenticated users.
[1935] (Claim 4)
[1936] 10. The system of claim 1, further comprising means for storing a user's emotional history to aid in generating future response messages.
[1937] (Claim 5)
[1938] 2. The system according to claim 1, further comprising means for causing the work instruction robot to perform a specific task in accordance with the user's emotion. [Explanation of symbols]
[1939] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Device 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robot< / url:> < / url:> < / url:> < / url:>
Claims
1. means for receiving a natural language query entered by a user into the terminal; means for analyzing the query and retrieving appropriate information from an employee database based on the analysis result; means for generating a response message based on the acquired information; means for displaying the response message on a user terminal; A system including:
2. The system of claim 1 , further comprising: means for using a natural language processing engine to analyze the query.
3. 2. The system according to claim 1, further comprising means for performing user authentication and allowing access only to authenticated users.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A