system
The system addresses inefficiencies in accessing enterprise-specific information by analyzing and storing data in a searchable format, extracting relevant keywords, and generating personalized responses using Retrieval Augmented Generation technology, enhancing productivity and user experience.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- SOFTBANK GROUP CORP
- Filing Date
- 2024-10-21
- Publication Date
- 2026-05-07
AI Technical Summary
Existing systems face challenges in efficiently searching and providing accurate information specific to an enterprise, such as source code and technical documents, due to difficulties in extracting and presenting this information in a usable form, leading to decreased development and operational efficiency, and reliance on external information sources that may not provide accurate enterprise-specific answers.
A system that analyzes internal company information, stores it in a searchable format, extracts relevant keywords from natural language queries, and uses Retrieval Augmented Generation technology to generate comprehensive and accurate responses by integrating external information.
This system streamlines information utilization within a company, improving business productivity by enabling quick and accurate retrieval of necessary information without specialized knowledge, and providing personalized responses tailored to user emotions and circumstances.
Smart Images

Figure 2026074897000001_ABST
Abstract
Description
Technical Field
[0001] The technology of the present disclosure relates to a system.
Background Art
[0002] Patent Document 1 discloses a method for controlling a persona chatbot, which is performed by at least one processor, including steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to an explanation of a character of the chatbot, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance as a response to the user utterance.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] There is a problem that it is difficult to easily search for information specific to an enterprise, such as source code of a system or technical documents, and extract and provide them in an efficiently usable form. For this reason, system developers and persons in charge may spend a great deal of time obtaining necessary information, and as a result, the efficiency of development and operation may decrease. In addition, since existing AI models refer to information on the Internet, there is also a problem that it is difficult to obtain an accurate answer based on specific enterprise internal information.
Means for Solving the Problems
[0005] This invention provides means for analyzing information held within a company and storing it in a database in a searchable format, and means for analyzing natural language questions received from users and extracting relevant keywords. Furthermore, it includes means for searching the database based on the extracted keywords and filtering and prioritizing information based on relevance. It also includes means for generating and providing natural language answers to users based on the search results. By utilizing Retrieval Augmented Generation technology, which integrates information from external sources, in this search and answer generation, it enables the provision of more comprehensive and accurate information. This streamlines the use of information within the company and improves business productivity.
[0006] "Information held within a company" refers to all documents, such as software source code and technical documentation, that a company owns and manages.
[0007] A "searchable format" refers to a structure where information is stored in a database and can be retrieved quickly and accurately using appropriate queries.
[0008] A "natural language question" refers to an inquiry made by a user using everyday language structures, and typically does not require specific technical terms or coding.
[0009] "Relevant keywords" refer to important terms extracted during the analysis of user questions and used as search queries in the search process.
[0010] "Search results" refer to a collection of data extracted from a database or external source as information relevant to a question.
[0011] "Natural language responses" refer to answer statements that are based on generated search results and expressed in everyday language that is easy for users to understand.
[0012] "Retrieval Augmented Generation technology" refers to a technology that uses data acquired during information retrieval to generate new natural language content by having AI complement it. [Brief explanation of the drawing]
[0013] [Figure 1] This is a conceptual diagram showing an example of the configuration of a data processing system according to the first embodiment. [Figure 2] This is a conceptual diagram showing an example of the essential functions of a data processing device and a smart device according to the first embodiment. [Figure 3] This is a conceptual diagram showing an example of the configuration of a data processing system according to the second embodiment. [Figure 4] This is a conceptual diagram showing an example of the main functions of a data processing device and smart glasses according to the second embodiment. [Figure 5] This is a conceptual diagram showing an example of the configuration of a data processing system according to the third embodiment. [Figure 6] This is a conceptual diagram showing an example of the main functions of a data processing device and a headset-type terminal according to the third embodiment. [Figure 7] This is a conceptual diagram showing an example of the configuration of a data processing system according to the fourth embodiment. [Figure 8] This is a conceptual diagram showing an example of the main functions of a data processing device and a robot according to the fourth embodiment. [Figure 9] This shows an emotion map where multiple emotions are mapped. [Figure 10] This shows an emotion map where multiple emotions are mapped. [Figure 11] This is a sequence diagram showing the processing flow of the data processing system in Example 1. [Figure 12] This is a sequence diagram showing the processing flow of the data processing system in Application Example 1. [Figure 13] This is a sequence diagram showing the processing flow of the data processing system in Example 2, which incorporates an emotion engine. [Figure 14]It is a sequence diagram showing the processing flow of a data processing system in Application Example 2 when a sentiment engine is combined.
Embodiments for Carrying Out the Invention
[0014] Hereinafter, an example of an embodiment of a system according to the technology of the present disclosure will be described with reference to the accompanying drawings.
[0015] First, the terms used in the following description will be explained.
[0016] In the following embodiments, a numbered processor (hereinafter simply referred to as "processor") may be a single arithmetic unit or a combination of multiple arithmetic units. Also, the processor may be a single type of arithmetic unit or a combination of multiple types of arithmetic units. Examples of arithmetic units include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), an APU (Accelerated Processing Unit), and the like.
[0017] In the following embodiments, a numbered RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a work memory by the processor.
[0018] In the following embodiments, a numbered storage is one or more non-volatile storage devices that store various programs and various parameters, etc. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), or magnetic tapes, and the like.
[0019] In the following embodiments, the signed communication interface (I / F) is an interface that includes a communication processor and an antenna, etc. The communication interface manages communication between multiple computers. Examples of communication standards applicable to the communication interface include wireless communication standards such as 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), or Bluetooth (registered trademark).
[0020] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." That is, "A and / or B" means that it may be A alone, or B alone, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" applies when expressing three or more things linked by "and / or."
[0021] [First Embodiment]
[0022] Figure 1 shows an example of the configuration of the data processing system 10 according to the first embodiment.
[0023] As shown in Figure 1, the data processing system 10 includes a data processing device 12 and a smart device 14. An example of the data processing device 12 is a server.
[0024] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0025] The smart device 14 comprises a computer 36, a reception device 38, an output device 40, a camera 42, and a communication interface 44. The computer 36 comprises a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The reception device 38, output device 40, and camera 42 are also connected to the bus 52.
[0026] The reception device 38 is equipped with a touch panel 38A and a microphone 38B, etc., and receives user input. The touch panel 38A receives user input by detecting contact with an object (e.g., a pen or finger). The microphone 38B receives user input by detecting the user's voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the data indicating the user input.
[0027] The output device 40 includes a display 40A and a speaker 40B, and presents data to the user 20 by outputting the data in a form perceptible to the user 20 (e.g., audio and / or text). The display 40A displays visible information such as text and images according to instructions from the processor 46. The speaker 40B outputs audio according to instructions from the processor 46. The camera 42 is a small digital camera equipped with an optical system such as a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.
[0028] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various types of information between processor 46 and processor 28 via network 54.
[0029] Figure 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0030] As shown in Figure 2, in the data processing device 12, a specific processing is performed by the processor 28. A specific processing program 56 is stored in the storage 32. The specific processing program 56 is an example of a "program" related to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 according to the specific processing program 56 executed on the RAM 30.
[0031] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0032] In the smart device 14, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The reception output program 60 is used in conjunction with a specific processing program 56 by the data processing system 10. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0033] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the smart device 14 as the "terminal".
[0034] This invention is a system for efficiently managing and appropriately utilizing information held internally by a company. The system consists of three main components: a server, a terminal, and a user.
[0035] The server first receives the source code and technical documentation of systems owned by the company and has the function to analyze them. Then, it stores the analyzed information in a searchable format in a database. This makes it possible to organize and organize the information, and the subsequent search process proceeds smoothly.
[0036] Users can ask questions to the system using natural language. This does not require special technical skills or jargon; questions can be asked using ordinary language.
[0037] The terminal is responsible for receiving questions entered by the user and immediately sending them to the server. The received questions are analyzed on the server using natural language processing technology, and relevant keywords are extracted. Based on these keywords, the server searches the database and efficiently finds the necessary information.
[0038] Search results are optimized by the server and filtered based on relevance. Furthermore, Retrieval Augmented Generation technology is used to generate the answers the user is looking for by combining information from external sources with information obtained from the database.
[0039] The final answer is sent from the server to the terminal and presented to the user. This system allows users to quickly obtain specific information and significantly reduces the time required for system development and management.
[0040] For example, if a user asks, "What are the necessary steps for adding a new feature?", the server searches the relevant source code and technical documentation and summarizes the appropriate procedures and precautions in natural language. In this way, users can quickly understand the necessary steps, contributing to improved work efficiency.
[0041] The following describes the processing flow.
[0042] Step 1:
[0043] The server receives system source code and technical documentation provided by the company. It analyzes the received information and generates metadata from each document. This metadata includes important keywords describing the file's content and information about the document's relationships. Once the analysis is complete, the server stores this data in a searchable format in a database.
[0044] Step 2:
[0045] The user enters a specific question into the terminal using natural language. This question typically concerns the system's specifications or operation. The entered question is immediately sent to the server via the terminal.
[0046] Step 3:
[0047] The server analyzes the received question using a natural language processing engine to interpret its intent. This process extracts relevant keywords and key concepts from the question.
[0048] Step 4:
[0049] The server queries the database based on the extracted keywords to search for relevant source code and technical documents. Simultaneously, it retrieves relevant information from external sources and incorporates it into the search results.
[0050] Step 5:
[0051] The server filters the search results and prioritizes the information based on relevance. At this stage, Retrieval Augmented Generation technology is used to generate natural language responses that complement the search results.
[0052] Step 6:
[0053] The generated response is sent from the server to the terminal. The terminal presents the response to the user, who can then obtain the necessary information from it. This allows the user to understand the steps required to solve the problem and take the next action efficiently.
[0054] (Example 1)
[0055] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."
[0056] There is a growing need for systems that can efficiently manage the vast amounts of information held within a company, and that allow users to quickly and accurately obtain the necessary information even without specialized knowledge. However, conventional information management systems have problems with the accuracy of information retrieval and the accuracy of response generation, and there is a need for a method that users can operate intuitively.
[0057] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0058] In this invention, the server includes means for analyzing data held within the company and storing it in a searchable format, means for analyzing natural language queries received from users and extracting relevant language units, and means for searching for information within the management data based on the extracted language units and organizing and ranking it based on its relevance. This makes it possible for users to quickly obtain the necessary information through intuitive operation, even without specialized knowledge.
[0059] "Data held within a company" refers to all information that a company generates or acquires in the course of carrying out its business operations, and this information is used for analysis and decision-making.
[0060] "To analyze and store in a searchable format" refers to the process of examining data in a specific way and organizing and saving that information so that it can be easily searched.
[0061] "Natural language inquiries received from users" refers to information that users send to the system in a conversational form, expressing questions or requests.
[0062] "Extracting relevant linguistic units" is the process of extracting words and phrases that are important for search and analysis from natural language queries.
[0063] "Searching for information within the management data" refers to the process of finding the necessary information from the stored database.
[0064] "Organizing and prioritizing based on relevance" refers to a method of organizing search results according to their importance and usefulness, and determining their priority.
[0065] "Generating natural language responses using generative AI technology" refers to the process of using artificial intelligence technology to create natural-sounding answers using generated data and information.
[0066] "Utilizing knowledge from external sources" refers to the means of providing more comprehensive and accurate answers and information by using information and knowledge supplied from outside the company.
[0067] "Information augmentation and generation technology" is a technology that combines internal data with external information to generate more sophisticated and useful information.
[0068] This invention provides an embodiment of a system that efficiently manages information held by a company and enables users to quickly obtain the information they need.
[0069] The server receives information generated or acquired within the company, such as software source code and technical documents, analyzes them, and stores them in a searchable format in a database. This analysis utilizes data mining and natural language processing techniques. Specifically, search engines such as "ElasticSearch®" may be used. The server further analyzes queries entered by users in natural language and uses natural language processing software such as "spaCy" and "BERT" to extract key linguistic units.
[0070] The terminal is responsible for receiving natural language queries entered by the user and sending them to the server. In this process, it can interpret specific inquiries entered by the user, such as "Please tell me how to add the new feature."
[0071] Users can obtain information through an intuitive and easy-to-use interface. A concrete example of a prompt is, "Please provide instructions on how to add a new feature, based on the company's technical documentation." This allows users to easily obtain the necessary information even without technical background knowledge.
[0072] This system uses generational AI technology provided by the server, such as the "GPT-3(registered trademark)" model, to derive the optimal answer to user inquiries. By utilizing information augmentation generation technology, highly reliable information is provided by combining internal and external information. In this process, the server can integrate multiple data sources and quickly provide information that is useful to the user based on that information.
[0073] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0074] Step 1:
[0075] The server receives data collected within the company. This data includes source information and technical documents. The server analyzes this data using natural language processing techniques and stores it in a searchable format in a database. Specifically, it performs text mining and syntactic analysis and uses a search engine such as "Elasticsearch" to index the data. It transforms the raw input data into structured indexed data, generating output that enables efficient searching.
[0076] Step 2:
[0077] The user inputs a question into the system using natural language via a terminal. For example, they might input, "Tell me how to add a new feature." The terminal receives this input and sends it to the server. The natural language input from the user is received by the system as a query, and data for analysis is transferred to the server.
[0078] Step 3:
[0079] The server analyzes natural language queries received from terminals. Using natural language processing software such as "spaCy" or "BERT," it extracts relevant keywords and phrases from the queries. This analysis identifies important terms using text analysis techniques and generates query data necessary for searching. The extracted keyword set becomes the output of this step.
[0080] Step 4:
[0081] The server searches the database based on the extracted keywords. Within the database, keyword queries are executed to efficiently retrieve highly relevant information. A search engine is used to filter the data and identify the necessary information. This process provides a set of highly relevant documents as output.
[0082] Step 5:
[0083] The server uses generative AI technology to create user-appropriate responses based on highly relevant search results. For example, it may use a generative AI model such as "GPT-3" to create complementary answers that combine external information. In this step, information aggregation and interpretation are performed to form a meaningful natural language response. The generated response is obtained as output.
[0084] Step 6:
[0085] The server sends the final generated response to the terminal. The terminal then presents this response to the user. This allows the user to intuitively confirm the information they need and use it in their work. The transfer of response data from the server to the terminal, and the provision of information to the user based on that data, are the outputs of this step.
[0086] (Application Example 1)
[0087] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."
[0088] Modern businesses are required to properly manage and promptly provide information about machinery and manufacturing processes within their factories. However, due to the sheer volume of information and the wide range of information required, there are limited systems that can efficiently extract and provide this information. This invention aims to solve these problems and improve operational efficiency by enabling factory workers to instantly obtain the information they need.
[0089] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[0090] In this invention, the server includes means for analyzing information sources and storing them in a searchable format, means for extracting relevant terms based on natural language queries received from users, and means installed on equipment to automatically provide procedures and methods in response to queries. This enables factory workers to quickly obtain detailed information and solutions regarding machinery and manufacturing processes.
[0091] "Information sources" is a general term for information stored in a format that a system can analyze and search, such as internal company data, technical documents, and software source code.
[0092] A "user" refers to anyone who accesses the system and attempts to obtain information by entering questions in natural language.
[0093] "Natural language" refers to the language that humans use on a daily basis, and is a means of communication that does not require special technical skills or specialized terminology.
[0094] A "word or phrase" is a related word or phrase extracted from a user's question, and serves as a keyword for searching for information.
[0095] A "device" is a hardware device on which a system is installed, and it is a device that allows users to input questions and receive information through a user interface.
[0096] "Providing procedures and methods" means responding to a user's question with appropriate solutions and implementation steps, thereby supporting the user in solving the problem.
[0097] A "server" refers to a central computer system that performs information analysis, storage, retrieval, and provides information to users.
[0098] The system for implementing this invention consists of three main components: a server, a terminal, and a user.
[0099] The server is the core computer system that analyzes information sources and stores them in a searchable format. The software used includes MySQL® as the database engine, NLTK and spaCy for natural language processing, and Elasticsearch for information retrieval. The server also uses Retrieval Augmented Generation technology to generate natural language responses to user queries.
[0100] A terminal is a communication device that allows users to input questions through a user interface and receive information from a server. Terminals can be implemented in a variety of forms, such as mobile devices, smart glasses, or robots.
[0101] The user inputs a question in natural language using a terminal. The terminal sends this question to a server, which returns the most appropriate answer. This process allows users to instantly obtain information related to equipment and processes without requiring complex expertise.
[0102] For example, a factory worker might input "How do I deal with error code E123 on machine A?" into a terminal. An example of a generated prompt might be, "Please tell me the procedure and precautions for adding part X." The system can then provide a quick and accurate answer to such questions.
[0103] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0104] Step 1:
[0105] The user uses a terminal to input a question in natural language. This input includes a specific problem or request for information. The terminal receives this input and prepares to send it to the server.
[0106] Step 2:
[0107] The terminal sends the question received from the user to the server. The server receives this input and begins analysis using natural language processing tools (such as NLTK or spaCy). As a result of the analysis, relevant keywords are extracted. In this process, important words and phrases are identified from the input sentence and output as keywords.
[0108] Step 3:
[0109] The server searches the database (MySQL or Elasticsearch) based on the extracted keywords. This search aims to efficiently extract relevant information from the source. The information obtained as a search result is organized and prioritized according to its relevance.
[0110] Step 4:
[0111] The server uses Retrieval Augmented Generation technology to generate the optimal answer from the search results, integrating information obtained from external sources. The generated prompt will be specific and practical, such as "Please tell me the procedure and precautions for adding part X."
[0112] Step 5:
[0113] The generated response is sent from the server to the terminal. Upon receiving it, the terminal displays it to the user via the user interface. Based on this information, the user can address the problem and take the necessary actions.
[0114] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[0115] This invention combines a system for efficiently utilizing information within a company with an emotion engine that recognizes user emotions. This enables the provision of information that takes user emotions into consideration, allowing for more personalized support.
[0116] The system has three main components: servers, terminals, and users. First, the server receives the source code and technical documentation of the company's software, analyzes them, and builds them into a searchable database. The analysis results are stored along with metadata to enable rapid retrieval of information.
[0117] When users ask questions to the system, they do not need any special technical knowledge and can input them in natural language. The terminal receives the user's question and uses an emotion engine to analyze the sentiment behind the question. This sentiment information is useful for analysis that includes the nuances of the question.
[0118] The server analyzes the received question and sentiment information, extracting relevant keywords. Based on these keywords, it searches the database and collects information that matches the user's request. The search results are then adjusted in tone and content based on the user's sentiment identified by the sentiment engine.
[0119] Ultimately, the server generates a response in natural language and presents it to the user through the terminal. This response provides accurate and helpful information while reflecting the user's emotional state.
[0120] For example, if a user is urgently seeking information about a software bug fix, the sentiment engine recognizes their urgency and generates a response that offers a quick and helpful solution. In this way, users can obtain information that suits their situation and emotions, thereby increasing their work efficiency.
[0121] The following describes the processing flow.
[0122] Step 1:
[0123] The server receives source code and technical documentation for software generated within the company, analyzes them, and generates metadata. The analyzed information is then organized into a searchable format and stored in a database. This process is necessary to quickly retrieve information and prepare it for use in subsequent processing.
[0124] Step 2:
[0125] Users input questions into the system using natural language. These questions concern specific problems and solutions, and may also include the user's emotions, so they can be sent directly through the device.
[0126] Step 3:
[0127] The device sends the question received from the user to the emotion engine, which then analyzes the user's emotions. The emotion engine determines the user's emotional state based on the content of the question and sends that information, along with the question, to the server.
[0128] Step 4:
[0129] The server analyzes the received question and user sentiment information, extracting relevant keywords. This allows it to create appropriate queries against the database and retrieve the necessary information.
[0130] Step 5:
[0131] The server filters search results based on sentiment information and adjusts the tone and content to match the user's emotions. This process utilizes Retrieval Augmented Generation technology to generate more specific information that complements the answers.
[0132] Step 6:
[0133] Ultimately, the server sends the generated response to the terminal, which then presents the response to the user. Based on this response, the user can quickly proceed with their tasks.
[0134] (Example 2)
[0135] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the smart device 14 as the "terminal".
[0136] The information resources generated or held within a company are vast and diverse, and many challenges exist in efficiently and effectively utilizing them. Firstly, there is a need not only to store information, but also to be able to search for it instantly when needed and use it appropriately. Secondly, there is a need for a system that can provide more relevant information and responses, taking into account the user's emotions and circumstances. In particular, a system that can provide information in accordance with the user's emotions enables personalized support that was not possible with conventional information retrieval systems.
[0137] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[0138] In this invention, the server includes means for analyzing information resources held within the company and storing them as a searchable data set, means for analyzing natural language queries received from users and extracting relevant identification information, and sentiment analysis means for analyzing the user's emotions and adjusting the tone and content of the generated response. This makes it possible to provide personalized information according to the user's emotions and specific circumstances.
[0139] "Information resources held within a company" refers to information such as data, documents, and source code that a company generates or collects in the course of carrying out its business operations.
[0140] A "searchable data set" refers to a collection of data in which information resources are systematically organized and processed in a way that allows users to easily retrieve the information they require.
[0141] "Natural language querying" refers to a method of asking for information using one's own words or common expressions, without requiring specialized knowledge from the user.
[0142] "Identifying information" refers to keywords and related information extracted from natural language queries and used for searching.
[0143] "Emotional analysis tools" refer to technologies that analyze the emotions expressed by users from text, audio, etc., and adjust their responses based on that information.
[0144] A "generative model" refers to computational methods and algorithms used to create appropriate natural language responses based on collected information and user sentiment.
[0145] "Program source code" refers to text data written in a programming language that describes the various functions and operations that make up a software program.
[0146] "Technical documentation" refers to official or informal documents that describe technical processes, specifications, procedures, etc., within a company.
[0147] To implement this invention, a system consisting of three main elements—a server, a terminal, and a user—is required.
[0148] A server plays the role of aggregating and organizing information resources held within a company and storing them as a searchable data set. Specifically, a database server is required to collect and analyze source code and technical documents owned by the company and build an index that improves search efficiency. A search engine such as Apache® Lucene is suitable for creating the index.
[0149] After information resources are aggregated, users can input the information they need into their terminals using natural language. Users can make inquiries through this system even without the necessary technical skills.
[0150] The device processes the inquiry information received from the user and analyzes the emotions contained within it. Cloud-based natural language processing services are suitable for emotion analysis, and this can be achieved using services such as Google® Cloud NLP. This makes it possible to determine the user's emotional state (e.g., anxious, relaxed, tense).
[0151] This system uses a generative AI model to generate natural language-based responses, providing the user with the most appropriate answer. For example, if a user is urgently searching for specific information among a large amount of technical documentation, the system can determine the user's urgency through sentiment analysis and provide a quick and accurate response. An example of a prompt in such a case might be, "The user is in a hurry, please provide the key points of the information quickly."
[0152] Overall, this system efficiently utilizes diverse information resources within a company while providing information that is tailored to the user's emotional state. This enables more effective information management and utilization, leading to improved operational efficiency.
[0153] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0154] Step 1:
[0155] The server collects and analyzes information resources held within the company. This collection includes retrieving data from file servers and repositories. Inputs are source code and technical documents, and output is a searchable data set. Text indexing software is used for data analysis, and the data is indexed using a search engine such as Apache Lucene.
[0156] Step 2:
[0157] The user inputs the information they want to know into the device in natural language. The input is the user's question, and its format is free-form natural language. The device receives this question and sends it to the next sentiment analysis process.
[0158] Step 3:
[0159] The device receives the user's question text and performs sentiment analysis. The input is the user's question, and the output is sentiment information. Services such as Google Cloud NLP are used for sentiment analysis to identify positive or negative emotions and urgency contained in the question.
[0160] Step 4:
[0161] The server extracts relevant identifiers based on the user's questions and sentiment information. The input consists of questions and metadata that have undergone sentiment analysis, while the output is identifiers and keywords used for searching. Natural language processing libraries such as spaCy are used for this extraction.
[0162] Step 5:
[0163] The server searches the data set using identification information and collects relevant information. The input is identification information, and the output is a set of information as search results. A search algorithm is applied to select the most relevant information and set priorities.
[0164] Step 6:
[0165] The server adjusts the generated search results with the user's sentiment information and produces a natural language response. The input is the search results and sentiment information, and the output is a customized response. It utilizes a generative AI model to generate a response with an appropriate tone based on the prompt "The user is in a hurry, please provide the key points of the information quickly."
[0166] Step 7:
[0167] The terminal displays the response received from the server to the user. The input is the response information from the server, and the output is the displayed answer to the user. This allows the user to obtain accurate information tailored to their situation.
[0168] (Application Example 2)
[0169] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."
[0170] Modern businesses are required to respond flexibly to the diverse needs of their customers. Especially in retail settings, understanding customer emotions and providing personalized service is a crucial challenge directly linked to improving customer satisfaction. However, analyzing customer emotions in real time and providing service based on that analysis has been difficult with traditional systems and human capabilities.
[0171] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.
[0172] In this invention, the server includes means for analyzing information held within the company and storing it in a database in a searchable format; means for analyzing natural language questions received from users and extracting relevant keywords; and means for analyzing the user's emotions and adjusting the tone and content of the response based on that emotional information. This makes it possible to understand customer emotions in physical stores and provide appropriate responses in real time.
[0173] "Information held within a company" refers to all information related to business operations, such as documents, databases, and program source code, that a company owns and manages.
[0174] A "searchable format" refers to a data format that is organized and structured to allow for efficient retrieval of information within a database.
[0175] A "natural language question" refers to an inquiry or question entered using the language that humans use in everyday life.
[0176] "Relevant keywords" refer to words and phrases that are effective for information retrieval, extracted based on the user's question.
[0177] "Information in a database" refers to information assets that centrally manage and store various types of data held within a company.
[0178] "Filtering and prioritizing" refers to the process of organizing acquired information based on the user's question intent and needs, and then ranking it based on its importance and relevance.
[0179] "Natural language responses" refer to sentences that are generated based on search results and presented to the user in a meaningful way.
[0180] "Emotional analysis" refers to technology that analyzes a user's facial expressions and statements to identify their emotional state.
[0181] "Information retrieval and generation technology" refers to technology that integrates internal data with external information sources to generate and provide richer and more relevant information.
[0182] The system in this invention maximizes information efficiency within a company by analyzing user emotions in real time and providing information accordingly. The system mainly consists of three components: a server, a terminal, and a user.
[0183] The server's role is to analyze documents and program code accumulated within the company and store them in a database in an easily searchable format. The database enables rapid information retrieval and can integrate data from external sources using information retrieval, extension, and generation technologies.
[0184] The terminal receives questions from customers in natural language and analyzes them using natural language processing technology. The analyzed content is extracted as relevant keywords, and at the same time, an emotion analysis engine (e.g., Microsoft® Azure® Face API) identifies the emotional state. This emotion information is used to adjust the tone and content of the responses generated by the server.
[0185] Users can interact directly with the system using smart glasses or other devices. This interaction can be used, for example, to improve customer service in stores. When a user makes a request, the system takes their emotional state into consideration and provides optimal product information and service guidance in real time.
[0186] A concrete example is a scenario in a bookstore where a customer is unsure which fiction book to choose. If emotion analysis detects "confusion," the terminal will display "Please explain your recommended book in more detail!" Based on this information, the store clerk can recommend books that are suitable for the customer and provide detailed explanations.
[0187] By utilizing a generative AI model, the prompt message is processed in the form of, for example, "Extract the book themes this customer is looking for as keywords, and create a list of new releases that match those themes." In this way, personalized information provision that takes customer emotions into account is achieved.
[0188] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0189] Step 1:
[0190] The server analyzes documents and program source code accumulated within the company and stores them in a database in an easily searchable format. The input is unstructured internal company information, and the output is an indexed database. This process uses document analysis algorithms to structure the data along with metadata.
[0191] Step 2:
[0192] The user inputs a question into the device using natural language. The device receives this input and analyzes the context using a natural language processing engine. The input is the user's question text, and the output is extracted keywords and sentiment information. Specifically, the question is summarized through a process of word analysis and semantic understanding.
[0193] Step 3:
[0194] The device acquires the user's facial expressions and tone in real time through cameras and sensors, and identifies their emotional state using an emotion analysis engine. The input is real-time facial expression data, and the output is an emotion label (e.g., joy, confusion). This makes it possible to understand the user's mental focus.
[0195] Step 4:
[0196] The server receives keywords and sentiment information sent from the terminal, searches the database, and filters and prioritizes relevant information. The input is keywords and sentiment information, and the output is a list of highly relevant information. External data is also considered during processing using information retrieval, augmentation, and generation techniques.
[0197] Step 5:
[0198] The server generates natural language responses based on search results and adjusts the tone and content based on sentiment information. The input is a list of relevant information, and the output is a natural language response with an adjusted tone. Specifically, it uses a generative AI model to automatically generate documents and adjusts prompt sentences as needed.
[0199] Step 6:
[0200] The terminal presents the user with natural language responses received from the server. The input is the server's response, and the output is information displayed in a format easily understood by the user. This allows for real-time solutions tailored to the user's situation.
[0201] The specific processing unit 290 transmits the result of the specific processing to the smart device 14. In the smart device 14, the control unit 46A causes the output device 40 to output the result of the specific processing. The microphone 38B acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[0202] Data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of data generation model 58 is ChatGPT (registered trademark) (Internet search).<URL: https: / / openai.com / blog / chatgpt> ), Gemini (registered trademark) (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0203] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the smart device 14.
[0204] [Second Embodiment]
[0205] Figure 3 shows an example of the configuration of the data processing system 210 according to the second embodiment.
[0206] As shown in Figure 3, the data processing system 210 includes a data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.
[0207] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0208] The smart glasses 214 include a computer 36, a microphone 238, a speaker 240, a camera 42, and a communication interface 44. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, and camera 42 are also connected to the bus 52.
[0209] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[0210] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[0211] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[0212] Figure 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Figure 4, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[0213] The specific processing program 56 is an example of a "program" relating to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0214] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0215] In the smart glasses 214, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0216] Next, the identification processing performed by the identification processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal".
[0217] This invention is a system for efficiently managing and appropriately utilizing information held internally by a company. The system consists of three main components: a server, a terminal, and a user.
[0218] The server first receives the source code and technical documentation of systems owned by the company and has the function to analyze them. Then, it stores the analyzed information in a searchable format in a database. This makes it possible to organize and organize the information, and the subsequent search process proceeds smoothly.
[0219] Users can ask questions to the system using natural language. This does not require special technical skills or jargon; questions can be asked using ordinary language.
[0220] The terminal is responsible for receiving questions entered by the user and immediately sending them to the server. The received questions are analyzed on the server using natural language processing technology, and relevant keywords are extracted. Based on these keywords, the server searches the database and efficiently finds the necessary information.
[0221] Search results are optimized by the server and filtered based on relevance. Furthermore, Retrieval Augmented Generation technology is used to generate the answers the user is looking for by combining information from external sources with information obtained from the database.
[0222] The final answer is sent from the server to the terminal and presented to the user. This system allows users to quickly obtain specific information and significantly reduces the time required for system development and management.
[0223] For example, if a user asks, "What are the necessary steps for adding a new feature?", the server searches the relevant source code and technical documentation and summarizes the appropriate procedures and precautions in natural language. In this way, users can quickly understand the necessary steps, contributing to improved work efficiency.
[0224] The following describes the processing flow.
[0225] Step 1:
[0226] The server receives system source code and technical documentation provided by the company. It analyzes the received information and generates metadata from each document. This metadata includes important keywords describing the file's content and information about the document's relationships. Once the analysis is complete, the server stores this data in a searchable format in a database.
[0227] Step 2:
[0228] The user enters a specific question into the terminal using natural language. This question typically concerns the system's specifications or operation. The entered question is immediately sent to the server via the terminal.
[0229] Step 3:
[0230] The server analyzes the received question using a natural language processing engine to interpret its intent. This process extracts relevant keywords and key concepts from the question.
[0231] Step 4:
[0232] The server queries the database based on the extracted keywords to search for relevant source code and technical documents. Simultaneously, it retrieves relevant information from external sources and incorporates it into the search results.
[0233] Step 5:
[0234] The server filters the search results and prioritizes the information based on relevance. At this stage, Retrieval Augmented Generation technology is used to generate natural language responses that complement the search results.
[0235] Step 6:
[0236] The generated response is sent from the server to the terminal. The terminal presents the response to the user, who can then obtain the necessary information from it. This allows the user to understand the steps required to solve the problem and take the next action efficiently.
[0237] (Example 1)
[0238] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."
[0239] There is a growing need for systems that can efficiently manage the vast amounts of information held within a company, and that allow users to quickly and accurately obtain the necessary information even without specialized knowledge. However, conventional information management systems have problems with the accuracy of information retrieval and the accuracy of response generation, and there is a need for a method that users can operate intuitively.
[0240] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0241] In this invention, the server includes means for analyzing data held within the company and storing it in a searchable format, means for analyzing natural language queries received from users and extracting relevant language units, and means for searching for information within the management data based on the extracted language units and organizing and ranking it based on its relevance. This makes it possible for users to quickly obtain the necessary information through intuitive operation, even without specialized knowledge.
[0242] "Data held within a company" refers to all information that a company generates or acquires in the course of carrying out its business operations, and this information is used for analysis and decision-making.
[0243] "To analyze and store in a searchable format" refers to the process of examining data in a specific way and organizing and saving that information so that it can be easily searched.
[0244] "Natural language inquiries received from users" refers to information that users send to the system in a conversational form, expressing questions or requests.
[0245] "Extracting relevant linguistic units" is the process of extracting words and phrases that are important for search and analysis from natural language queries.
[0246] "Searching for information within the management data" refers to the process of finding the necessary information from the stored database.
[0247] "Organizing and prioritizing based on relevance" refers to a method of organizing search results according to their importance and usefulness, and determining their priority.
[0248] "Generating natural language responses using generative AI technology" refers to the process of using artificial intelligence technology to create natural-sounding answers using generated data and information.
[0249] "Utilizing knowledge from external sources" refers to the means of providing more comprehensive and accurate answers and information by using information and knowledge supplied from outside the company.
[0250] "Information augmentation and generation technology" is a technology that combines internal data with external information to generate more sophisticated and useful information.
[0251] This invention provides an embodiment of a system that efficiently manages information held by a company and enables users to quickly obtain the information they need.
[0252] The server receives information generated or acquired within the company, such as software source code and technical documents, analyzes them, and stores them in a searchable format in a database. This analysis utilizes data mining and natural language processing techniques. Specifically, search engines such as "Elasticsearch" may be used. The server further analyzes queries entered by users in natural language and uses natural language processing software such as "spaCy" and "BERT" to extract key linguistic units.
[0253] The terminal is responsible for receiving natural language queries entered by the user and sending them to the server. In this process, it can interpret specific inquiries entered by the user, such as "Please tell me how to add the new feature."
[0254] Users can obtain information through an intuitive and easy-to-use interface. A concrete example of a prompt is, "Please provide instructions on how to add a new feature, based on the company's technical documentation." This allows users to easily obtain the necessary information even without technical background knowledge.
[0255] This system uses generative AI technology provided by the server, such as a model like "GPT-3," to derive the optimal answer to user inquiries. By utilizing information augmentation and generation technology, highly reliable information is provided by combining internal and external information. In this process, the server can integrate multiple data sources and quickly provide information that is useful to the user based on that information.
[0256] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0257] Step 1:
[0258] The server receives data collected within the company. This data includes source information and technical documents. The server analyzes this data using natural language processing techniques and stores it in a searchable format in a database. Specifically, it performs text mining and syntactic analysis and uses a search engine such as "Elasticsearch" to index the data. It transforms the raw input data into structured indexed data, generating output that enables efficient searching.
[0259] Step 2:
[0260] The user inputs a question into the system using natural language via a terminal. For example, they might input, "Tell me how to add a new feature." The terminal receives this input and sends it to the server. The natural language input from the user is received by the system as a query, and data for analysis is transferred to the server.
[0261] Step 3:
[0262] The server analyzes natural language queries received from terminals. Using natural language processing software such as "spaCy" or "BERT," it extracts relevant keywords and phrases from the queries. This analysis identifies important terms using text analysis techniques and generates query data necessary for searching. The extracted keyword set becomes the output of this step.
[0263] Step 4:
[0264] The server searches the database based on the extracted keywords. Within the database, keyword queries are executed to efficiently retrieve highly relevant information. A search engine is used to filter the data and identify the necessary information. This process provides a set of highly relevant documents as output.
[0265] Step 5:
[0266] The server uses generative AI technology to create user-appropriate responses based on highly relevant search results. For example, it may use a generative AI model such as "GPT-3" to create complementary answers that combine external information. In this step, information aggregation and interpretation are performed to form a meaningful natural language response. The generated response is obtained as output.
[0267] Step 6:
[0268] The server sends the final generated response to the terminal. The terminal then presents this response to the user. This allows the user to intuitively confirm the information they need and use it in their work. The transfer of response data from the server to the terminal, and the provision of information to the user based on that data, are the outputs of this step.
[0269] (Application Example 1)
[0270] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."
[0271] Modern businesses are required to properly manage and promptly provide information about machinery and manufacturing processes within their factories. However, due to the sheer volume of information and the wide range of information required, there are limited systems that can efficiently extract and provide this information. This invention aims to solve these problems and improve operational efficiency by enabling factory workers to instantly obtain the information they need.
[0272] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[0273] In this invention, the server includes means for analyzing information sources and storing them in a searchable format, means for extracting relevant terms based on natural language queries received from users, and means installed on equipment to automatically provide procedures and methods in response to queries. This enables factory workers to quickly obtain detailed information and solutions regarding machinery and manufacturing processes.
[0274] "Information sources" is a general term for information stored in a format that a system can analyze and search, such as internal company data, technical documents, and software source code.
[0275] A "user" refers to anyone who accesses the system and attempts to obtain information by entering questions in natural language.
[0276] "Natural language" refers to the language that humans use on a daily basis, and is a means of communication that does not require special technical skills or specialized terminology.
[0277] A "word or phrase" is a related word or phrase extracted from a user's question, and serves as a keyword for searching for information.
[0278] A "device" is a hardware device on which a system is installed, and it is a device that allows users to input questions and receive information through a user interface.
[0279] "Providing procedures and methods" means responding to a user's question with appropriate solutions and implementation steps, thereby supporting the user in solving the problem.
[0280] A "server" refers to a central computer system that performs information analysis, storage, retrieval, and provides information to users.
[0281] The system for implementing this invention consists of three main components: a server, a terminal, and a user.
[0282] The server is the core computer system that analyzes information sources and stores them in a searchable format. The software used includes MySQL as the database engine, NLTK and spaCy for natural language processing, and Elasticsearch for information retrieval. The server also uses Retrieval Augmented Generation technology to generate natural language responses according to the user's questions.
[0283] The terminal is a communication device through which the user inputs questions and receives information from the server. The terminal can be implemented in various forms such as a mobile terminal, smart glasses, or a robot.
[0284] The user inputs questions in natural language using the terminal. The terminal sends this question to the server and receives an optimal answer. Through this process, the user can immediately obtain information related to devices and processes without having complex specialized knowledge.
[0285] For example, a worker in a factory can input "What is the solution for error code E123 of machine A?" into the terminal. At this time, an example of the generated prompt sentence is "Tell me the additional procedures and precautions for part X." For such questions, the system can quickly and accurately present answers.
[0286] The flow of specific processing in Application Example 1 will be described using Figure 12.
[0287] Step 1:
[0288] The user inputs a question in natural language using the terminal. This input includes specific problems or information requests. The terminal receives this input and prepares to send it to the server.
[0289] Step 2:
[0290] The terminal sends the question received from the user to the server. The server receives this input and begins analysis using natural language processing tools (such as NLTK or spaCy). As a result of the analysis, relevant keywords are extracted. In this process, important words and phrases are identified from the input sentence and output as keywords.
[0291] Step 3:
[0292] The server searches the database (MySQL or Elasticsearch) based on the extracted keywords. This search aims to efficiently extract relevant information from the source. The information obtained as a search result is organized and prioritized according to its relevance.
[0293] Step 4:
[0294] The server uses Retrieval Augmented Generation technology to generate the optimal answer from the search results, integrating information obtained from external sources. The generated prompt will be specific and practical, such as "Please tell me the procedure and precautions for adding part X."
[0295] Step 5:
[0296] The generated response is sent from the server to the terminal. Upon receiving it, the terminal displays it to the user via the user interface. Based on this information, the user can address the problem and take the necessary actions.
[0297] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[0298] This invention combines a system for efficiently utilizing information within a company with an emotion engine that recognizes user emotions. This enables the provision of information that takes user emotions into consideration, allowing for more personalized support.
[0299] The system has three main components: servers, terminals, and users. First, the server receives the source code and technical documentation of the company's software, analyzes them, and builds them into a searchable database. The analysis results are stored along with metadata to enable rapid retrieval of information.
[0300] When users ask questions to the system, they do not need any special technical knowledge and can input them in natural language. The terminal receives the user's question and uses an emotion engine to analyze the sentiment behind the question. This sentiment information is useful for analysis that includes the nuances of the question.
[0301] The server analyzes the received question and sentiment information, extracting relevant keywords. Based on these keywords, it searches the database and collects information that matches the user's request. The search results are then adjusted in tone and content based on the user's sentiment identified by the sentiment engine.
[0302] Ultimately, the server generates a response in natural language and presents it to the user through the terminal. This response provides accurate and helpful information while reflecting the user's emotional state.
[0303] For example, if a user is urgently seeking information about a software bug fix, the sentiment engine recognizes their urgency and generates a response that offers a quick and helpful solution. In this way, users can obtain information that suits their situation and emotions, thereby increasing their work efficiency.
[0304] The following describes the processing flow.
[0305] Step 1:
[0306] The server receives the source code and technical documents of software generated within the enterprise, analyzes them, and generates metadata. The analyzed information is organized in a searchable format and stored in a database. This process is for quickly searching the information and preparing it to be available for later processing.
[0307] Step 2:
[0308] The user inputs a question to the system in natural language. This question is about specific issues or solutions and may contain the user's emotions, so it can be directly transmitted through the terminal.
[0309] Step 3:
[0310] The terminal transmits the question received from the user to the emotion engine and analyzes the user's emotions. The emotion engine discriminates the user's emotional state based on the content of the question and transmits that information together with the question to the server.
[0311] Step 4:
[0312] The server analyzes the received question and the user's emotion information, and extracts relevant keywords. This enables creating an appropriate query for the database and retrieving the necessary information.
[0313] Step 5:
[0314] The server filters the search results based on the emotion information and adjusts the tone and content according to the user's emotions. In this process, the Retrieval Augmented Generation technology is utilized to generate more specific information in the form of complementing the answer.
[0315] Step 6:
[0316] Ultimately, the server sends the generated response to the terminal, which then presents the response to the user. Based on this response, the user can quickly proceed with their tasks.
[0317] (Example 2)
[0318] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal".
[0319] The information resources generated or held within a company are vast and diverse, and many challenges exist in efficiently and effectively utilizing them. Firstly, there is a need not only to store information, but also to be able to search for it instantly when needed and use it appropriately. Secondly, there is a need for a system that can provide more relevant information and responses, taking into account the user's emotions and circumstances. In particular, a system that can provide information in accordance with the user's emotions enables personalized support that was not possible with conventional information retrieval systems.
[0320] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[0321] In this invention, the server includes means for analyzing information resources held within the company and storing them as a searchable data set, means for analyzing natural language queries received from users and extracting relevant identification information, and sentiment analysis means for analyzing the user's emotions and adjusting the tone and content of the generated response. This makes it possible to provide personalized information according to the user's emotions and specific circumstances.
[0322] "Information resources held within a company" refers to information such as data, documents, and source code that a company generates or collects in the course of carrying out its business operations.
[0323] A "searchable data set" refers to a collection of data in which information resources are systematically organized and processed in a way that allows users to easily retrieve the information they require.
[0324] "Natural language querying" refers to a method of asking for information using one's own words or common expressions, without requiring specialized knowledge from the user.
[0325] "Identifying information" refers to keywords and related information extracted from natural language queries and used for searching.
[0326] "Emotional analysis tools" refer to technologies that analyze the emotions expressed by users from text, audio, etc., and adjust their responses based on that information.
[0327] A "generative model" refers to computational methods and algorithms used to create appropriate natural language responses based on collected information and user sentiment.
[0328] "Program source code" refers to text data written in a programming language that describes the various functions and operations that make up a software program.
[0329] "Technical documentation" refers to official or informal documents that describe technical processes, specifications, procedures, etc., within a company.
[0330] To implement this invention, a system consisting of three main elements—a server, a terminal, and a user—is required.
[0331] A server plays the role of aggregating and organizing information resources held within a company and storing them as a searchable data set. Specifically, a database server is required to collect and analyze source code and technical documents owned by the company and build an index that improves search efficiency. A search engine such as Apache Lucene is suitable for creating the index.
[0332] After information resources are aggregated, users can input the information they need into their terminals using natural language. Users can make inquiries through this system even without the necessary technical skills.
[0333] The device processes the inquiry information received from the user and analyzes the emotions contained within it. Cloud-based natural language processing services are suitable for emotion analysis, and this can be achieved using services such as Google Cloud NLP. This makes it possible to determine the user's emotional state (e.g., anxious, relaxed, tense).
[0334] This system uses a generative AI model to generate natural language-based responses, providing the user with the most appropriate answer. For example, if a user is urgently searching for specific information among a large amount of technical documentation, the system can determine the user's urgency through sentiment analysis and provide a quick and accurate response. An example of a prompt in such a case might be, "The user is in a hurry, please provide the key points of the information quickly."
[0335] Overall, this system efficiently utilizes diverse information resources within a company while providing information that is tailored to the user's emotional state. This enables more effective information management and utilization, leading to improved operational efficiency.
[0336] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0337] Step 1:
[0338] The server collects and analyzes information resources held within the company. This collection includes retrieving data from file servers and repositories. Inputs are source code and technical documents, and output is a searchable data set. Text indexing software is used for data analysis, and the data is indexed using a search engine such as Apache Lucene.
[0339] Step 2:
[0340] The user inputs the information they want to know into the device in natural language. The input is the user's question, and its format is free-form natural language. The device receives this question and sends it to the next sentiment analysis process.
[0341] Step 3:
[0342] The device receives the user's question text and performs sentiment analysis. The input is the user's question, and the output is sentiment information. Services such as Google Cloud NLP are used for sentiment analysis to identify positive or negative emotions and urgency contained in the question.
[0343] Step 4:
[0344] The server extracts relevant identifiers based on the user's questions and sentiment information. The input consists of questions and metadata that have undergone sentiment analysis, while the output is identifiers and keywords used for searching. Natural language processing libraries such as spaCy are used for this extraction.
[0345] Step 5:
[0346] The server searches the data set using identification information and collects relevant information. The input is identification information, and the output is a set of information as search results. A search algorithm is applied to select the most relevant information and set priorities.
[0347] Step 6:
[0348] The server adjusts the generated search results with the user's sentiment information and produces a natural language response. The input is the search results and sentiment information, and the output is a customized response. It utilizes a generative AI model to generate a response with an appropriate tone based on the prompt "The user is in a hurry, please provide the key points of the information quickly."
[0349] Step 7:
[0350] The terminal displays the response received from the server to the user. The input is the response information from the server, and the output is the displayed answer to the user. This allows the user to obtain accurate information tailored to their situation.
[0351] (Application Example 2)
[0352] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."
[0353] Modern businesses are required to respond flexibly to the diverse needs of their customers. Especially in retail settings, understanding customer emotions and providing personalized service is a crucial challenge directly linked to improving customer satisfaction. However, analyzing customer emotions in real time and providing service based on that analysis has been difficult with traditional systems and human capabilities.
[0354] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.
[0355] In this invention, the server includes means for analyzing information held within the company and storing it in a database in a searchable format; means for analyzing natural language questions received from users and extracting relevant keywords; and means for analyzing the user's emotions and adjusting the tone and content of the response based on that emotional information. This makes it possible to understand customer emotions in physical stores and provide appropriate responses in real time.
[0356] "Information held within a company" refers to all information related to business operations, such as documents, databases, and program source code, that a company owns and manages.
[0357] A "searchable format" refers to a data format that is organized and structured to allow for efficient retrieval of information within a database.
[0358] A "natural language question" refers to an inquiry or question entered using the language that humans use in everyday life.
[0359] "Relevant keywords" refer to words and phrases that are effective for information retrieval, extracted based on the user's question.
[0360] "Information in a database" refers to information assets that centrally manage and store various types of data held within a company.
[0361] "Filtering and prioritizing" refers to the process of organizing acquired information based on the user's question intent and needs, and then ranking it based on its importance and relevance.
[0362] "Natural language responses" refer to sentences that are generated based on search results and presented to the user in a meaningful way.
[0363] "Emotional analysis" refers to technology that analyzes a user's facial expressions and statements to identify their emotional state.
[0364] "Information retrieval and generation technology" refers to technology that integrates internal data with external information sources to generate and provide richer and more relevant information.
[0365] The system in this invention maximizes information efficiency within a company by analyzing user emotions in real time and providing information accordingly. The system mainly consists of three components: a server, a terminal, and a user.
[0366] The server's role is to analyze documents and program code accumulated within the company and store them in a database in an easily searchable format. The database enables rapid information retrieval and can integrate data from external sources using information retrieval, extension, and generation technologies.
[0367] The terminal receives questions from customers in natural language and analyzes them using natural language processing technology. The analyzed content is extracted as relevant keywords, and at the same time, an emotion analysis engine (e.g., Microsoft Azure Face API) identifies the emotional state. This emotion information is used to adjust the tone and content of the responses generated by the server.
[0368] Users can interact directly with the system using smart glasses or other devices. This interaction can be used, for example, to improve customer service in stores. When a user makes a request, the system takes their emotional state into consideration and provides optimal product information and service guidance in real time.
[0369] A concrete example is a scenario in a bookstore where a customer is unsure which fiction book to choose. If emotion analysis detects "confusion," the terminal will display "Please explain your recommended book in more detail!" Based on this information, the store clerk can recommend books that are suitable for the customer and provide detailed explanations.
[0370] By utilizing a generative AI model, the prompt message is processed in the form of, for example, "Extract the book themes this customer is looking for as keywords, and create a list of new releases that match those themes." In this way, personalized information provision that takes customer emotions into account is achieved.
[0371] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0372] Step 1:
[0373] The server analyzes documents and program source code accumulated within the company and stores them in a database in an easily searchable format. The input is unstructured internal company information, and the output is an indexed database. This process uses document analysis algorithms to structure the data along with metadata.
[0374] Step 2:
[0375] The user inputs a question into the device using natural language. The device receives this input and analyzes the context using a natural language processing engine. The input is the user's question text, and the output is extracted keywords and sentiment information. Specifically, the question is summarized through a process of word analysis and semantic understanding.
[0376] Step 3:
[0377] The device acquires the user's facial expressions and tone in real time through cameras and sensors, and identifies their emotional state using an emotion analysis engine. The input is real-time facial expression data, and the output is an emotion label (e.g., joy, confusion). This makes it possible to understand the user's mental focus.
[0378] Step 4:
[0379] The server receives keywords and sentiment information sent from the terminal, searches the database, and filters and prioritizes relevant information. The input is keywords and sentiment information, and the output is a list of highly relevant information. External data is also considered during processing using information retrieval, augmentation, and generation techniques.
[0380] Step 5:
[0381] The server generates natural language responses based on search results and adjusts the tone and content based on sentiment information. The input is a list of relevant information, and the output is a natural language response with an adjusted tone. Specifically, it uses a generative AI model to automatically generate documents and adjusts prompt sentences as needed.
[0382] Step 6:
[0383] The terminal presents the user with natural language responses received from the server. The input is the server's response, and the output is information displayed in a format easily understood by the user. This allows for real-time solutions tailored to the user's situation.
[0384] The specific processing unit 290 transmits the result of the specific processing to the smart glasses 214. In the smart glasses 214, the control unit 46A causes the speaker 240 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.
[0385] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0386] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the smart glasses 214.
[0387] [Third Embodiment]
[0388] Figure 5 shows an example of the configuration of the data processing system 310 according to the third embodiment.
[0389] As shown in Figure 5, the data processing system 310 includes a data processing device 12 and a headset terminal 314. An example of the data processing device 12 is a server.
[0390] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0391] The headset terminal 314 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication interface 44, and a display 343. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, camera 42, and display 343 are also connected to the bus 52.
[0392] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[0393] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[0394] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[0395] Figure 6 shows an example of the main functions of the data processing device 12 and the headset terminal 314. As shown in Figure 6, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[0396] The specific processing program 56 is an example of a "program" relating to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0397] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0398] In the headset terminal 314, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0399] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the headset terminal 314 will be referred to as the "terminal".
[0400] This invention is a system for efficiently managing and appropriately utilizing information held internally by a company. The system consists of three main components: a server, a terminal, and a user.
[0401] The server first receives the source code and technical documentation of systems owned by the company and has the function to analyze them. Then, it stores the analyzed information in a searchable format in a database. This makes it possible to organize and organize the information, and the subsequent search process proceeds smoothly.
[0402] Users can ask questions to the system using natural language. This does not require special technical skills or jargon; questions can be asked using ordinary language.
[0403] The terminal is responsible for receiving questions entered by the user and immediately sending them to the server. The received questions are analyzed on the server using natural language processing technology, and relevant keywords are extracted. Based on these keywords, the server searches the database and efficiently finds the necessary information.
[0404] Search results are optimized by the server and filtered based on relevance. Furthermore, Retrieval Augmented Generation technology is used to generate the answers the user is looking for by combining information from external sources with information obtained from the database.
[0405] The final answer is sent from the server to the terminal and presented to the user. This system allows users to quickly obtain specific information and significantly reduces the time required for system development and management.
[0406] For example, if a user asks, "What are the necessary steps for adding a new feature?", the server searches the relevant source code and technical documentation and summarizes the appropriate procedures and precautions in natural language. In this way, users can quickly understand the necessary steps, contributing to improved work efficiency.
[0407] The following describes the processing flow.
[0408] Step 1:
[0409] The server receives system source code and technical documentation provided by the company. It analyzes the received information and generates metadata from each document. This metadata includes important keywords describing the file's content and information about the document's relationships. Once the analysis is complete, the server stores this data in a searchable format in a database.
[0410] Step 2:
[0411] The user enters a specific question into the terminal using natural language. This question typically concerns the system's specifications or operation. The entered question is immediately sent to the server via the terminal.
[0412] Step 3:
[0413] The server analyzes the received question using a natural language processing engine to interpret its intent. This process extracts relevant keywords and key concepts from the question.
[0414] Step 4:
[0415] The server queries the database based on the extracted keywords to search for relevant source code and technical documents. Simultaneously, it retrieves relevant information from external sources and incorporates it into the search results.
[0416] Step 5:
[0417] The server filters the search results and prioritizes the information based on relevance. At this stage, Retrieval Augmented Generation technology is used to generate natural language responses that complement the search results.
[0418] Step 6:
[0419] The generated response is sent from the server to the terminal. The terminal presents the response to the user, who can then obtain the necessary information from it. This allows the user to understand the steps required to solve the problem and take the next action efficiently.
[0420] (Example 1)
[0421] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."
[0422] There is a growing need for systems that can efficiently manage the vast amounts of information held within a company, and that allow users to quickly and accurately obtain the necessary information even without specialized knowledge. However, conventional information management systems have problems with the accuracy of information retrieval and the accuracy of response generation, and there is a need for a method that users can operate intuitively.
[0423] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0424] In this invention, the server includes means for analyzing data held within the company and storing it in a searchable format, means for analyzing natural language queries received from users and extracting relevant language units, and means for searching for information within the management data based on the extracted language units and organizing and ranking it based on its relevance. This makes it possible for users to quickly obtain the necessary information through intuitive operation, even without specialized knowledge.
[0425] "Data held within a company" refers to all information that a company generates or acquires in the course of carrying out its business operations, and this information is used for analysis and decision-making.
[0426] "To analyze and store in a searchable format" refers to the process of examining data in a specific way and organizing and saving that information so that it can be easily searched.
[0427] "Natural language inquiries received from users" refers to information that users send to the system in a conversational form, expressing questions or requests.
[0428] "Extracting relevant linguistic units" is the process of extracting words and phrases that are important for search and analysis from natural language queries.
[0429] "Searching for information within the management data" refers to the process of finding the necessary information from the stored database.
[0430] "Organizing and prioritizing based on relevance" refers to a method of organizing search results according to their importance and usefulness, and determining their priority.
[0431] "Generating natural language responses using generative AI technology" refers to the process of using artificial intelligence technology to create natural-sounding answers using generated data and information.
[0432] "Utilizing knowledge from external sources" refers to the means of providing more comprehensive and accurate answers and information by using information and knowledge supplied from outside the company.
[0433] "Information augmentation and generation technology" is a technology that combines internal data with external information to generate more sophisticated and useful information.
[0434] This invention provides an embodiment of a system that efficiently manages information held by a company and enables users to quickly obtain the information they need.
[0435] The server receives information generated or acquired within the company, such as software source code and technical documents, analyzes them, and stores them in a searchable format in a database. This analysis utilizes data mining and natural language processing techniques. Specifically, search engines such as "Elasticsearch" may be used. The server further analyzes queries entered by users in natural language and uses natural language processing software such as "spaCy" and "BERT" to extract key linguistic units.
[0436] The terminal is responsible for receiving natural language queries entered by the user and sending them to the server. In this process, it can interpret specific inquiries entered by the user, such as "Please tell me how to add the new feature."
[0437] Users can obtain information through an intuitive and easy-to-use interface. A concrete example of a prompt is, "Please provide instructions on how to add a new feature, based on the company's technical documentation." This allows users to easily obtain the necessary information even without technical background knowledge.
[0438] This system uses generative AI technology provided by the server, such as a model like "GPT-3," to derive the optimal answer to user inquiries. By utilizing information augmentation and generation technology, highly reliable information is provided by combining internal and external information. In this process, the server can integrate multiple data sources and quickly provide information that is useful to the user based on that information.
[0439] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0440] Step 1:
[0441] The server receives data collected within the company. This data includes source information and technical documents. The server analyzes this data using natural language processing techniques and stores it in a searchable format in a database. Specifically, it performs text mining and syntactic analysis and uses a search engine such as "Elasticsearch" to index the data. It transforms the raw input data into structured indexed data, generating output that enables efficient searching.
[0442] Step 2:
[0443] The user inputs a question into the system using natural language via a terminal. For example, they might input, "Tell me how to add a new feature." The terminal receives this input and sends it to the server. The natural language input from the user is received by the system as a query, and data for analysis is transferred to the server.
[0444] Step 3:
[0445] The server analyzes natural language queries received from terminals. Using natural language processing software such as "spaCy" or "BERT," it extracts relevant keywords and phrases from the queries. This analysis identifies important terms using text analysis techniques and generates query data necessary for searching. The extracted keyword set becomes the output of this step.
[0446] Step 4:
[0447] The server searches the database based on the extracted keywords. Within the database, keyword queries are executed to efficiently retrieve highly relevant information. A search engine is used to filter the data and identify the necessary information. This process provides a set of highly relevant documents as output.
[0448] Step 5:
[0449] The server uses generative AI technology to create user-appropriate responses based on highly relevant search results. For example, it may use a generative AI model such as "GPT-3" to create complementary answers that combine external information. In this step, information aggregation and interpretation are performed to form a meaningful natural language response. The generated response is obtained as output.
[0450] Step 6:
[0451] The server sends the final generated response to the terminal. The terminal then presents this response to the user. This allows the user to intuitively confirm the information they need and use it in their work. The transfer of response data from the server to the terminal, and the provision of information to the user based on that data, are the outputs of this step.
[0452] (Application Example 1)
[0453] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."
[0454] Modern businesses are required to properly manage and promptly provide information about machinery and manufacturing processes within their factories. However, due to the sheer volume of information and the wide range of information required, there are limited systems that can efficiently extract and provide this information. This invention aims to solve these problems and improve operational efficiency by enabling factory workers to instantly obtain the information they need.
[0455] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[0456] In this invention, the server includes means for analyzing information sources and storing them in a searchable format, means for extracting relevant terms based on natural language queries received from users, and means installed on equipment to automatically provide procedures and methods in response to queries. This enables factory workers to quickly obtain detailed information and solutions regarding machinery and manufacturing processes.
[0457] "Information sources" is a general term for information stored in a format that a system can analyze and search, such as internal company data, technical documents, and software source code.
[0458] A "user" refers to anyone who accesses the system and attempts to obtain information by entering questions in natural language.
[0459] "Natural language" refers to the language that humans use on a daily basis, and is a means of communication that does not require special technical skills or specialized terminology.
[0460] A "word or phrase" is a related word or phrase extracted from a user's question, and serves as a keyword for searching for information.
[0461] A "device" is a hardware device on which a system is installed, and it is a device that allows users to input questions and receive information through a user interface.
[0462] "Providing procedures and methods" means responding to a user's question with appropriate solutions and implementation steps, thereby supporting the user in solving the problem.
[0463] A "server" refers to a central computer system that performs information analysis, storage, retrieval, and provides information to users.
[0464] The system for implementing this invention consists of three main components: a server, a terminal, and a user.
[0465] The server is the core computer system that analyzes information sources and stores them in a searchable format. The software used includes MySQL as the database engine, NLTK and spaCy for natural language processing, and Elasticsearch for information retrieval. The server also uses Retrieval Augmented Generation technology to generate natural language responses to user queries.
[0466] A terminal is a communication device that allows users to input questions through a user interface and receive information from a server. Terminals can be implemented in a variety of forms, such as mobile devices, smart glasses, or robots.
[0467] The user inputs a question in natural language using a terminal. The terminal sends this question to a server, which returns the most appropriate answer. This process allows users to instantly obtain information related to equipment and processes without requiring complex expertise.
[0468] For example, a factory worker might input "How do I deal with error code E123 on machine A?" into a terminal. An example of a generated prompt might be, "Please tell me the procedure and precautions for adding part X." The system can then provide a quick and accurate answer to such questions.
[0469] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0470] Step 1:
[0471] The user uses a terminal to input a question in natural language. This input includes a specific problem or request for information. The terminal receives this input and prepares to send it to the server.
[0472] Step 2:
[0473] The terminal sends the question received from the user to the server. The server receives this input and begins analysis using natural language processing tools (such as NLTK or spaCy). As a result of the analysis, relevant keywords are extracted. In this process, important words and phrases are identified from the input sentence and output as keywords.
[0474] Step 3:
[0475] The server searches the database (MySQL or Elasticsearch) based on the extracted keywords. This search aims to efficiently extract relevant information from the source. The information obtained as a search result is organized and prioritized according to its relevance.
[0476] Step 4:
[0477] The server uses Retrieval Augmented Generation technology to generate the optimal answer from the search results, integrating information obtained from external sources. The generated prompt will be specific and practical, such as "Please tell me the procedure and precautions for adding part X."
[0478] Step 5:
[0479] The generated response is sent from the server to the terminal. Upon receiving it, the terminal displays it to the user via the user interface. Based on this information, the user can address the problem and take the necessary actions.
[0480] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[0481] This invention combines a system for efficiently utilizing information within a company with an emotion engine that recognizes user emotions. This enables the provision of information that takes user emotions into consideration, allowing for more personalized support.
[0482] The system has three main components: servers, terminals, and users. First, the server receives the source code and technical documentation of the company's software, analyzes them, and builds them into a searchable database. The analysis results are stored along with metadata to enable rapid retrieval of information.
[0483] When users ask questions to the system, they do not need any special technical knowledge and can input them in natural language. The terminal receives the user's question and uses an emotion engine to analyze the sentiment behind the question. This sentiment information is useful for analysis that includes the nuances of the question.
[0484] The server analyzes the received question and sentiment information, extracting relevant keywords. Based on these keywords, it searches the database and collects information that matches the user's request. The search results are then adjusted in tone and content based on the user's sentiment identified by the sentiment engine.
[0485] Ultimately, the server generates a response in natural language and presents it to the user through the terminal. This response provides accurate and helpful information while reflecting the user's emotional state.
[0486] For example, if a user is urgently seeking information about a software bug fix, the sentiment engine recognizes their urgency and generates a response that offers a quick and helpful solution. In this way, users can obtain information that suits their situation and emotions, thereby increasing their work efficiency.
[0487] The following describes the processing flow.
[0488] Step 1:
[0489] The server receives source code and technical documentation for software generated within the company, analyzes them, and generates metadata. The analyzed information is then organized into a searchable format and stored in a database. This process is necessary to quickly retrieve information and prepare it for use in subsequent processing.
[0490] Step 2:
[0491] Users input questions into the system using natural language. These questions concern specific problems and solutions, and may also include the user's emotions, so they can be sent directly through the device.
[0492] Step 3:
[0493] The device sends the question received from the user to the emotion engine, which then analyzes the user's emotions. The emotion engine determines the user's emotional state based on the content of the question and sends that information, along with the question, to the server.
[0494] Step 4:
[0495] The server analyzes the received question and user sentiment information, extracting relevant keywords. This allows it to create appropriate queries against the database and retrieve the necessary information.
[0496] Step 5:
[0497] The server filters search results based on sentiment information and adjusts the tone and content to match the user's emotions. This process utilizes Retrieval Augmented Generation technology to generate more specific information that complements the answers.
[0498] Step 6:
[0499] Ultimately, the server sends the generated response to the terminal, which then presents the response to the user. Based on this response, the user can quickly proceed with their tasks.
[0500] (Example 2)
[0501] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."
[0502] The information resources generated or held within a company are vast and diverse, and many challenges exist in efficiently and effectively utilizing them. Firstly, there is a need not only to store information, but also to be able to search for it instantly when needed and use it appropriately. Secondly, there is a need for a system that can provide more relevant information and responses, taking into account the user's emotions and circumstances. In particular, a system that can provide information in accordance with the user's emotions enables personalized support that was not possible with conventional information retrieval systems.
[0503] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[0504] In this invention, the server includes means for analyzing information resources held within the company and storing them as a searchable data set, means for analyzing natural language queries received from users and extracting relevant identification information, and sentiment analysis means for analyzing the user's emotions and adjusting the tone and content of the generated response. This makes it possible to provide personalized information according to the user's emotions and specific circumstances.
[0505] "Information resources held within a company" refers to information such as data, documents, and source code that a company generates or collects in the course of carrying out its business operations.
[0506] A "searchable data set" refers to a collection of data in which information resources are systematically organized and processed in a way that allows users to easily retrieve the information they require.
[0507] "Natural language querying" refers to a method of asking for information using one's own words or common expressions, without requiring specialized knowledge from the user.
[0508] "Identifying information" refers to keywords and related information extracted from natural language queries and used for searching.
[0509] "Emotional analysis tools" refer to technologies that analyze the emotions expressed by users from text, audio, etc., and adjust their responses based on that information.
[0510] A "generative model" refers to computational methods and algorithms used to create appropriate natural language responses based on collected information and user sentiment.
[0511] "Program source code" refers to text data written in a programming language that describes the various functions and operations that make up a software program.
[0512] "Technical documentation" refers to official or informal documents that describe technical processes, specifications, procedures, etc., within a company.
[0513] To implement this invention, a system consisting of three main elements—a server, a terminal, and a user—is required.
[0514] A server plays the role of aggregating and organizing information resources held within a company and storing them as a searchable data set. Specifically, a database server is required to collect and analyze source code and technical documents owned by the company and build an index that improves search efficiency. A search engine such as Apache Lucene is suitable for creating the index.
[0515] After information resources are aggregated, users can input the information they need into their terminals using natural language. Users can make inquiries through this system even without the necessary technical skills.
[0516] The device processes the inquiry information received from the user and analyzes the emotions contained within it. Cloud-based natural language processing services are suitable for emotion analysis, and this can be achieved using services such as Google Cloud NLP. This makes it possible to determine the user's emotional state (e.g., anxious, relaxed, tense).
[0517] This system uses a generative AI model to generate natural language-based responses, providing the user with the most appropriate answer. For example, if a user is urgently searching for specific information among a large amount of technical documentation, the system can determine the user's urgency through sentiment analysis and provide a quick and accurate response. An example of a prompt in such a case might be, "The user is in a hurry, please provide the key points of the information quickly."
[0518] Overall, this system efficiently utilizes diverse information resources within a company while providing information that is tailored to the user's emotional state. This enables more effective information management and utilization, leading to improved operational efficiency.
[0519] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0520] Step 1:
[0521] The server collects and analyzes information resources held within the company. This collection includes retrieving data from file servers and repositories. Inputs are source code and technical documents, and output is a searchable data set. Text indexing software is used for data analysis, and the data is indexed using a search engine such as Apache Lucene.
[0522] Step 2:
[0523] The user inputs the information they want to know into the device in natural language. The input is the user's question, and its format is free-form natural language. The device receives this question and sends it to the next sentiment analysis process.
[0524] Step 3:
[0525] The device receives the user's question text and performs sentiment analysis. The input is the user's question, and the output is sentiment information. Services such as Google Cloud NLP are used for sentiment analysis to identify positive or negative emotions and urgency contained in the question.
[0526] Step 4:
[0527] The server extracts relevant identifiers based on the user's questions and sentiment information. The input consists of questions and metadata that have undergone sentiment analysis, while the output is identifiers and keywords used for searching. Natural language processing libraries such as spaCy are used for this extraction.
[0528] Step 5:
[0529] The server searches the data set using identification information and collects relevant information. The input is identification information, and the output is a set of information as search results. A search algorithm is applied to select the most relevant information and set priorities.
[0530] Step 6:
[0531] The server adjusts the generated search results with the user's sentiment information and produces a natural language response. The input is the search results and sentiment information, and the output is a customized response. It utilizes a generative AI model to generate a response with an appropriate tone based on the prompt "The user is in a hurry, please provide the key points of the information quickly."
[0532] Step 7:
[0533] The terminal displays the response received from the server to the user. The input is the response information from the server, and the output is the displayed answer to the user. This allows the user to obtain accurate information tailored to their situation.
[0534] (Application Example 2)
[0535] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."
[0536] Modern businesses are required to respond flexibly to the diverse needs of their customers. Especially in retail settings, understanding customer emotions and providing personalized service is a crucial challenge directly linked to improving customer satisfaction. However, analyzing customer emotions in real time and providing service based on that analysis has been difficult with traditional systems and human capabilities.
[0537] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.
[0538] In this invention, the server includes means for analyzing information held within the company and storing it in a database in a searchable format; means for analyzing natural language questions received from users and extracting relevant keywords; and means for analyzing the user's emotions and adjusting the tone and content of the response based on that emotional information. This makes it possible to understand customer emotions in physical stores and provide appropriate responses in real time.
[0539] "Information held within a company" refers to all information related to business operations, such as documents, databases, and program source code, that a company owns and manages.
[0540] A "searchable format" refers to a data format that is organized and structured to allow for efficient retrieval of information within a database.
[0541] A "natural language question" refers to an inquiry or question entered using the language that humans use in everyday life.
[0542] "Relevant keywords" refer to words and phrases that are effective for information retrieval, extracted based on the user's question.
[0543] "Information in a database" refers to information assets that centrally manage and store various types of data held within a company.
[0544] "Filtering and prioritizing" refers to the process of organizing acquired information based on the user's question intent and needs, and then ranking it based on its importance and relevance.
[0545] "Natural language responses" refer to sentences that are generated based on search results and presented to the user in a meaningful way.
[0546] "Emotional analysis" refers to technology that analyzes a user's facial expressions and statements to identify their emotional state.
[0547] "Information retrieval and generation technology" refers to technology that integrates internal data with external information sources to generate and provide richer and more relevant information.
[0548] The system in this invention maximizes information efficiency within a company by analyzing user emotions in real time and providing information accordingly. The system mainly consists of three components: a server, a terminal, and a user.
[0549] The server's role is to analyze documents and program code accumulated within the company and store them in a database in an easily searchable format. The database enables rapid information retrieval and can integrate data from external sources using information retrieval, extension, and generation technologies.
[0550] The terminal receives questions from customers in natural language and analyzes them using natural language processing technology. The analyzed content is extracted as relevant keywords, and at the same time, an emotion analysis engine (e.g., Microsoft Azure Face API) identifies the emotional state. This emotion information is used to adjust the tone and content of the responses generated by the server.
[0551] Users can interact directly with the system using smart glasses or other devices. This interaction can be used, for example, to improve customer service in stores. When a user makes a request, the system takes their emotional state into consideration and provides optimal product information and service guidance in real time.
[0552] A concrete example is a scenario in a bookstore where a customer is unsure which fiction book to choose. If emotion analysis detects "confusion," the terminal will display "Please explain your recommended book in more detail!" Based on this information, the store clerk can recommend books that are suitable for the customer and provide detailed explanations.
[0553] By utilizing a generative AI model, the prompt message is processed in the form of, for example, "Extract the book themes this customer is looking for as keywords, and create a list of new releases that match those themes." In this way, personalized information provision that takes customer emotions into account is achieved.
[0554] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0555] Step 1:
[0556] The server analyzes documents and program source code accumulated within the company and stores them in a database in an easily searchable format. The input is unstructured internal company information, and the output is an indexed database. This process uses document analysis algorithms to structure the data along with metadata.
[0557] Step 2:
[0558] The user inputs a question into the device using natural language. The device receives this input and analyzes the context using a natural language processing engine. The input is the user's question text, and the output is extracted keywords and sentiment information. Specifically, the question is summarized through a process of word analysis and semantic understanding.
[0559] Step 3:
[0560] The device acquires the user's facial expressions and tone in real time through cameras and sensors, and identifies their emotional state using an emotion analysis engine. The input is real-time facial expression data, and the output is an emotion label (e.g., joy, confusion). This makes it possible to understand the user's mental focus.
[0561] Step 4:
[0562] The server receives keywords and sentiment information sent from the terminal, searches the database, and filters and prioritizes relevant information. The input is keywords and sentiment information, and the output is a list of highly relevant information. External data is also considered during processing using information retrieval, augmentation, and generation techniques.
[0563] Step 5:
[0564] The server generates natural language responses based on search results and adjusts the tone and content based on sentiment information. The input is a list of relevant information, and the output is a natural language response with an adjusted tone. Specifically, it uses a generative AI model to automatically generate documents and adjusts prompt sentences as needed.
[0565] Step 6:
[0566] The terminal presents the user with natural language responses received from the server. The input is the server's response, and the output is information displayed in a format easily understood by the user. This allows for real-time solutions tailored to the user's situation.
[0567] The specific processing unit 290 transmits the result of the specific processing to the headset terminal 314. In the headset terminal 314, the control unit 46A causes the speaker 240 and display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.
[0568] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0569] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and specific processing may also be performed by the headset terminal 314.
[0570] [Fourth Embodiment]
[0571] Figure 7 shows an example of the configuration of the data processing system 410 according to the fourth embodiment.
[0572] As shown in Figure 7, the data processing system 410 includes a data processing device 12 and a robot 414. An example of the data processing device 12 is a server.
[0573] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0574] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication interface 44, and a controlled object 443. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, camera 42, and controlled object 443 are also connected to the bus 52.
[0575] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[0576] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[0577] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[0578] The controlled object 443 includes a display device, LEDs in the eyes, and motors that drive the arms, hands, and feet. The posture and gestures of the robot 414 are controlled by controlling the motors of the arms, hands, and feet. Some of the robot 414's emotions can be expressed by controlling these motors. Furthermore, the robot 414's facial expressions can also be expressed by controlling the illumination state of the LEDs in its eyes.
[0579] Figure 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Figure 8, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[0580] The specific processing program 56 is an example of a "program" relating to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0581] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0582] In robot 414, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0583] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[0584] This invention is a system for efficiently managing and appropriately utilizing information held internally by a company. The system consists of three main components: a server, a terminal, and a user.
[0585] The server first receives the source code and technical documentation of systems owned by the company and has the function to analyze them. Then, it stores the analyzed information in a searchable format in a database. This makes it possible to organize and organize the information, and the subsequent search process proceeds smoothly.
[0586] Users can ask questions to the system using natural language. This does not require special technical skills or jargon; questions can be asked using ordinary language.
[0587] The terminal is responsible for receiving questions entered by the user and immediately sending them to the server. The received questions are analyzed on the server using natural language processing technology, and relevant keywords are extracted. Based on these keywords, the server searches the database and efficiently finds the necessary information.
[0588] Search results are optimized by the server and filtered based on relevance. Furthermore, Retrieval Augmented Generation technology is used to generate the answers the user is looking for by combining information from external sources with information obtained from the database.
[0589] The final answer is sent from the server to the terminal and presented to the user. This system allows users to quickly obtain specific information and significantly reduces the time required for system development and management.
[0590] For example, if a user asks, "What are the necessary steps for adding a new feature?", the server searches the relevant source code and technical documentation and summarizes the appropriate procedures and precautions in natural language. In this way, users can quickly understand the necessary steps, contributing to improved work efficiency.
[0591] The following describes the processing flow.
[0592] Step 1:
[0593] The server receives system source code and technical documentation provided by the company. It analyzes the received information and generates metadata from each document. This metadata includes important keywords describing the file's content and information about the document's relationships. Once the analysis is complete, the server stores this data in a searchable format in a database.
[0594] Step 2:
[0595] The user enters a specific question into the terminal using natural language. This question typically concerns the system's specifications or operation. The entered question is immediately sent to the server via the terminal.
[0596] Step 3:
[0597] The server analyzes the received question using a natural language processing engine to interpret its intent. This process extracts relevant keywords and key concepts from the question.
[0598] Step 4:
[0599] The server queries the database based on the extracted keywords to search for relevant source code and technical documents. Simultaneously, it retrieves relevant information from external sources and incorporates it into the search results.
[0600] Step 5:
[0601] The server filters the search results and prioritizes the information based on relevance. At this stage, Retrieval Augmented Generation technology is used to generate natural language responses that complement the search results.
[0602] Step 6:
[0603] The generated response is sent from the server to the terminal. The terminal presents the response to the user, who can then obtain the necessary information from it. This allows the user to understand the steps required to solve the problem and take the next action efficiently.
[0604] (Example 1)
[0605] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[0606] There is a growing need for systems that can efficiently manage the vast amounts of information held within a company, and that allow users to quickly and accurately obtain the necessary information even without specialized knowledge. However, conventional information management systems have problems with the accuracy of information retrieval and the accuracy of response generation, and there is a need for a method that users can operate intuitively.
[0607] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0608] In this invention, the server includes means for analyzing data held within the company and storing it in a searchable format, means for analyzing natural language queries received from users and extracting relevant language units, and means for searching for information within the management data based on the extracted language units and organizing and ranking it based on its relevance. This makes it possible for users to quickly obtain the necessary information through intuitive operation, even without specialized knowledge.
[0609] "Data held within a company" refers to all information that a company generates or acquires in the course of carrying out its business operations, and this information is used for analysis and decision-making.
[0610] "To analyze and store in a searchable format" refers to the process of examining data in a specific way and organizing and saving that information so that it can be easily searched.
[0611] "Natural language inquiries received from users" refers to information that users send to the system in a conversational form, expressing questions or requests.
[0612] "Extracting relevant linguistic units" is the process of extracting words and phrases that are important for search and analysis from natural language queries.
[0613] "Searching for information within the management data" refers to the process of finding the necessary information from the stored database.
[0614] "Organizing and prioritizing based on relevance" refers to a method of organizing search results according to their importance and usefulness, and determining their priority.
[0615] "Generating natural language responses using generative AI technology" refers to the process of using artificial intelligence technology to create natural-sounding answers using generated data and information.
[0616] "Utilizing knowledge from external sources" refers to the means of providing more comprehensive and accurate answers and information by using information and knowledge supplied from outside the company.
[0617] "Information augmentation and generation technology" is a technology that combines internal data with external information to generate more sophisticated and useful information.
[0618] This invention provides an embodiment of a system that efficiently manages information held by a company and enables users to quickly obtain the information they need.
[0619] The server receives information generated or acquired within the company, such as software source code and technical documents, analyzes them, and stores them in a searchable format in a database. This analysis utilizes data mining and natural language processing techniques. Specifically, search engines such as "Elasticsearch" may be used. The server further analyzes queries entered by users in natural language and uses natural language processing software such as "spaCy" and "BERT" to extract key linguistic units.
[0620] The terminal is responsible for receiving natural language queries entered by the user and sending them to the server. In this process, it can interpret specific inquiries entered by the user, such as "Please tell me how to add the new feature."
[0621] Users can obtain information through an intuitive and easy-to-use interface. A concrete example of a prompt is, "Please provide instructions on how to add a new feature, based on the company's technical documentation." This allows users to easily obtain the necessary information even without technical background knowledge.
[0622] This system uses generative AI technology provided by the server, such as a model like "GPT-3," to derive the optimal answer to user inquiries. By utilizing information augmentation and generation technology, highly reliable information is provided by combining internal and external information. In this process, the server can integrate multiple data sources and quickly provide information that is useful to the user based on that information.
[0623] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0624] Step 1:
[0625] The server receives data collected within the company. This data includes source information and technical documents. The server analyzes this data using natural language processing techniques and stores it in a searchable format in a database. Specifically, it performs text mining and syntactic analysis and uses a search engine such as "Elasticsearch" to index the data. It transforms the raw input data into structured indexed data, generating output that enables efficient searching.
[0626] Step 2:
[0627] The user inputs a question into the system using natural language via a terminal. For example, they might input, "Tell me how to add a new feature." The terminal receives this input and sends it to the server. The natural language input from the user is received by the system as a query, and data for analysis is transferred to the server.
[0628] Step 3:
[0629] The server analyzes natural language queries received from terminals. Using natural language processing software such as "spaCy" or "BERT," it extracts relevant keywords and phrases from the queries. This analysis identifies important terms using text analysis techniques and generates query data necessary for searching. The extracted keyword set becomes the output of this step.
[0630] Step 4:
[0631] The server searches the database based on the extracted keywords. Within the database, keyword queries are executed to efficiently retrieve highly relevant information. A search engine is used to filter the data and identify the necessary information. This process provides a set of highly relevant documents as output.
[0632] Step 5:
[0633] The server uses generative AI technology to create user-appropriate responses based on highly relevant search results. For example, it may use a generative AI model such as "GPT-3" to create complementary answers that combine external information. In this step, information aggregation and interpretation are performed to form a meaningful natural language response. The generated response is obtained as output.
[0634] Step 6:
[0635] The server sends the final generated response to the terminal. The terminal then presents this response to the user. This allows the user to intuitively confirm the information they need and use it in their work. The transfer of response data from the server to the terminal, and the provision of information to the user based on that data, are the outputs of this step.
[0636] (Application Example 1)
[0637] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[0638] Modern businesses are required to properly manage and promptly provide information about machinery and manufacturing processes within their factories. However, due to the sheer volume of information and the wide range of information required, there are limited systems that can efficiently extract and provide this information. This invention aims to solve these problems and improve operational efficiency by enabling factory workers to instantly obtain the information they need.
[0639] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[0640] In this invention, the server includes means for analyzing information sources and storing them in a searchable format, means for extracting relevant terms based on natural language queries received from users, and means installed on equipment to automatically provide procedures and methods in response to queries. This enables factory workers to quickly obtain detailed information and solutions regarding machinery and manufacturing processes.
[0641] "Information sources" is a general term for information stored in a format that a system can analyze and search, such as internal company data, technical documents, and software source code.
[0642] A "user" refers to anyone who accesses the system and attempts to obtain information by entering questions in natural language.
[0643] "Natural language" refers to the language that humans use on a daily basis, and is a means of communication that does not require special technical skills or specialized terminology.
[0644] A "word or phrase" is a related word or phrase extracted from a user's question, and serves as a keyword for searching for information.
[0645] A "device" is a hardware device on which a system is installed, and it is a device that allows users to input questions and receive information through a user interface.
[0646] "Providing procedures and methods" means responding to a user's question with appropriate solutions and implementation steps, thereby supporting the user in solving the problem.
[0647] A "server" refers to a central computer system that performs information analysis, storage, retrieval, and provides information to users.
[0648] The system for implementing this invention consists of three main components: a server, a terminal, and a user.
[0649] The server is the core computer system that analyzes information sources and stores them in a searchable format. The software used includes MySQL as the database engine, NLTK and spaCy for natural language processing, and Elasticsearch for information retrieval. The server also uses Retrieval Augmented Generation technology to generate natural language responses to user queries.
[0650] A terminal is a communication device that allows users to input questions through a user interface and receive information from a server. Terminals can be implemented in a variety of forms, such as mobile devices, smart glasses, or robots.
[0651] The user inputs a question in natural language using a terminal. The terminal sends this question to a server, which returns the most appropriate answer. This process allows users to instantly obtain information related to equipment and processes without requiring complex expertise.
[0652] For example, a factory worker might input "How do I deal with error code E123 on machine A?" into a terminal. An example of a generated prompt might be, "Please tell me the procedure and precautions for adding part X." The system can then provide a quick and accurate answer to such questions.
[0653] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0654] Step 1:
[0655] The user uses a terminal to input a question in natural language. This input includes a specific problem or request for information. The terminal receives this input and prepares to send it to the server.
[0656] Step 2:
[0657] The terminal sends the question received from the user to the server. The server receives this input and begins analysis using natural language processing tools (such as NLTK or spaCy). As a result of the analysis, relevant keywords are extracted. In this process, important words and phrases are identified from the input sentence and output as keywords.
[0658] Step 3:
[0659] The server searches the database (MySQL or Elasticsearch) based on the extracted keywords. This search aims to efficiently extract relevant information from the source. The information obtained as a search result is organized and prioritized according to its relevance.
[0660] Step 4:
[0661] The server uses Retrieval Augmented Generation technology to generate the optimal answer from the search results, integrating information obtained from external sources. The generated prompt will be specific and practical, such as "Please tell me the procedure and precautions for adding part X."
[0662] Step 5:
[0663] The generated response is sent from the server to the terminal. Upon receiving it, the terminal displays it to the user via the user interface. Based on this information, the user can address the problem and take the necessary actions.
[0664] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[0665] This invention combines a system for efficiently utilizing information within a company with an emotion engine that recognizes user emotions. This enables the provision of information that takes user emotions into consideration, allowing for more personalized support.
[0666] The system has three main components: servers, terminals, and users. First, the server receives the source code and technical documentation of the company's software, analyzes them, and builds them into a searchable database. The analysis results are stored along with metadata to enable rapid retrieval of information.
[0667] When users ask questions to the system, they do not need any special technical knowledge and can input them in natural language. The terminal receives the user's question and uses an emotion engine to analyze the sentiment behind the question. This sentiment information is useful for analysis that includes the nuances of the question.
[0668] The server analyzes the received question and sentiment information, extracting relevant keywords. Based on these keywords, it searches the database and collects information that matches the user's request. The search results are then adjusted in tone and content based on the user's sentiment identified by the sentiment engine.
[0669] Ultimately, the server generates a response in natural language and presents it to the user through the terminal. This response provides accurate and helpful information while reflecting the user's emotional state.
[0670] For example, if a user is urgently seeking information about a software bug fix, the sentiment engine recognizes their urgency and generates a response that offers a quick and helpful solution. In this way, users can obtain information that suits their situation and emotions, thereby increasing their work efficiency.
[0671] The following describes the processing flow.
[0672] Step 1:
[0673] The server receives source code and technical documentation for software generated within the company, analyzes them, and generates metadata. The analyzed information is then organized into a searchable format and stored in a database. This process is necessary to quickly retrieve information and prepare it for use in subsequent processing.
[0674] Step 2:
[0675] Users input questions into the system using natural language. These questions concern specific problems and solutions, and may also include the user's emotions, so they can be sent directly through the device.
[0676] Step 3:
[0677] The device sends the question received from the user to the emotion engine, which then analyzes the user's emotions. The emotion engine determines the user's emotional state based on the content of the question and sends that information, along with the question, to the server.
[0678] Step 4:
[0679] The server analyzes the received question and user sentiment information, extracting relevant keywords. This allows it to create appropriate queries against the database and retrieve the necessary information.
[0680] Step 5:
[0681] The server filters search results based on sentiment information and adjusts the tone and content to match the user's emotions. This process utilizes Retrieval Augmented Generation technology to generate more specific information that complements the answers.
[0682] Step 6:
[0683] Ultimately, the server sends the generated response to the terminal, which then presents the response to the user. Based on this response, the user can quickly proceed with their tasks.
[0684] (Example 2)
[0685] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[0686] The information resources generated or held within a company are vast and diverse, and many challenges exist in efficiently and effectively utilizing them. Firstly, there is a need not only to store information, but also to be able to search for it instantly when needed and use it appropriately. Secondly, there is a need for a system that can provide more relevant information and responses, taking into account the user's emotions and circumstances. In particular, a system that can provide information in accordance with the user's emotions enables personalized support that was not possible with conventional information retrieval systems.
[0687] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[0688] In this invention, the server includes means for analyzing information resources held within the company and storing them as a searchable data set, means for analyzing natural language queries received from users and extracting relevant identification information, and sentiment analysis means for analyzing the user's emotions and adjusting the tone and content of the generated response. This makes it possible to provide personalized information according to the user's emotions and specific circumstances.
[0689] "Information resources held within a company" refers to information such as data, documents, and source code that a company generates or collects in the course of carrying out its business operations.
[0690] A "searchable data set" refers to a collection of data in which information resources are systematically organized and processed in a way that allows users to easily retrieve the information they require.
[0691] "Natural language querying" refers to a method of asking for information using one's own words or common expressions, without requiring specialized knowledge from the user.
[0692] "Identifying information" refers to keywords and related information extracted from natural language queries and used for searching.
[0693] "Emotional analysis tools" refer to technologies that analyze the emotions expressed by users from text, audio, etc., and adjust their responses based on that information.
[0694] A "generative model" refers to computational methods and algorithms used to create appropriate natural language responses based on collected information and user sentiment.
[0695] "Program source code" refers to text data written in a programming language that describes the various functions and operations that make up a software program.
[0696] "Technical documentation" refers to official or informal documents that describe technical processes, specifications, procedures, etc., within a company.
[0697] To implement this invention, a system consisting of three main elements—a server, a terminal, and a user—is required.
[0698] A server plays the role of aggregating and organizing information resources held within a company and storing them as a searchable data set. Specifically, a database server is required to collect and analyze source code and technical documents owned by the company and build an index that improves search efficiency. A search engine such as Apache Lucene is suitable for creating the index.
[0699] After information resources are aggregated, users can input the information they need into their terminals using natural language. Users can make inquiries through this system even without the necessary technical skills.
[0700] The device processes the inquiry information received from the user and analyzes the emotions contained within it. Cloud-based natural language processing services are suitable for emotion analysis, and this can be achieved using services such as Google Cloud NLP. This makes it possible to determine the user's emotional state (e.g., anxious, relaxed, tense).
[0701] This system uses a generative AI model to generate natural language-based responses, providing the user with the most appropriate answer. For example, if a user is urgently searching for specific information among a large amount of technical documentation, the system can determine the user's urgency through sentiment analysis and provide a quick and accurate response. An example of a prompt in such a case might be, "The user is in a hurry, please provide the key points of the information quickly."
[0702] Overall, this system efficiently utilizes diverse information resources within a company while providing information that is tailored to the user's emotional state. This enables more effective information management and utilization, leading to improved operational efficiency.
[0703] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0704] Step 1:
[0705] The server collects and analyzes information resources held within the company. This collection includes retrieving data from file servers and repositories. Inputs are source code and technical documents, and output is a searchable data set. Text indexing software is used for data analysis, and the data is indexed using a search engine such as Apache Lucene.
[0706] Step 2:
[0707] The user inputs the information they want to know into the device in natural language. The input is the user's question, and its format is free-form natural language. The device receives this question and sends it to the next sentiment analysis process.
[0708] Step 3:
[0709] The device receives the user's question text and performs sentiment analysis. The input is the user's question, and the output is sentiment information. Services such as Google Cloud NLP are used for sentiment analysis to identify positive or negative emotions and urgency contained in the question.
[0710] Step 4:
[0711] The server extracts relevant identifiers based on the user's questions and sentiment information. The input consists of questions and metadata that have undergone sentiment analysis, while the output is identifiers and keywords used for searching. Natural language processing libraries such as spaCy are used for this extraction.
[0712] Step 5:
[0713] The server searches the data set using identification information and collects relevant information. The input is identification information, and the output is a set of information as search results. A search algorithm is applied to select the most relevant information and set priorities.
[0714] Step 6:
[0715] The server adjusts the generated search results with the user's sentiment information and produces a natural language response. The input is the search results and sentiment information, and the output is a customized response. It utilizes a generative AI model to generate a response with an appropriate tone based on the prompt "The user is in a hurry, please provide the key points of the information quickly."
[0716] Step 7:
[0717] The terminal displays the response received from the server to the user. The input is the response information from the server, and the output is the displayed answer to the user. This allows the user to obtain accurate information tailored to their situation.
[0718] (Application Example 2)
[0719] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[0720] Modern businesses are required to respond flexibly to the diverse needs of their customers. Especially in retail settings, understanding customer emotions and providing personalized service is a crucial challenge directly linked to improving customer satisfaction. However, analyzing customer emotions in real time and providing service based on that analysis has been difficult with traditional systems and human capabilities.
[0721] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.
[0722] In this invention, the server includes means for analyzing information held within the company and storing it in a database in a searchable format; means for analyzing natural language questions received from users and extracting relevant keywords; and means for analyzing the user's emotions and adjusting the tone and content of the response based on that emotional information. This makes it possible to understand customer emotions in physical stores and provide appropriate responses in real time.
[0723] "Information held within a company" refers to all information related to business operations, such as documents, databases, and program source code, that a company owns and manages.
[0724] A "searchable format" refers to a data format that is organized and structured to allow for efficient retrieval of information within a database.
[0725] A "natural language question" refers to an inquiry or question entered using the language that humans use in everyday life.
[0726] "Relevant keywords" refer to words and phrases that are effective for information retrieval, extracted based on the user's question.
[0727] "Information in a database" refers to information assets that centrally manage and store various types of data held within a company.
[0728] "Filtering and prioritizing" refers to the process of organizing acquired information based on the user's question intent and needs, and then ranking it based on its importance and relevance.
[0729] "Natural language responses" refer to sentences that are generated based on search results and presented to the user in a meaningful way.
[0730] "Emotional analysis" refers to technology that analyzes a user's facial expressions and statements to identify their emotional state.
[0731] "Information retrieval and generation technology" refers to technology that integrates internal data with external information sources to generate and provide richer and more relevant information.
[0732] The system in this invention maximizes information efficiency within a company by analyzing user emotions in real time and providing information accordingly. The system mainly consists of three components: a server, a terminal, and a user.
[0733] The server's role is to analyze documents and program code accumulated within the company and store them in a database in an easily searchable format. The database enables rapid information retrieval and can integrate data from external sources using information retrieval, extension, and generation technologies.
[0734] The terminal receives questions from customers in natural language and analyzes them using natural language processing technology. The analyzed content is extracted as relevant keywords, and at the same time, an emotion analysis engine (e.g., Microsoft Azure Face API) identifies the emotional state. This emotion information is used to adjust the tone and content of the responses generated by the server.
[0735] Users can interact directly with the system using smart glasses or other devices. This interaction can be used, for example, to improve customer service in stores. When a user makes a request, the system takes their emotional state into consideration and provides optimal product information and service guidance in real time.
[0736] A concrete example is a scenario in a bookstore where a customer is unsure which fiction book to choose. If emotion analysis detects "confusion," the terminal will display "Please explain your recommended book in more detail!" Based on this information, the store clerk can recommend books that are suitable for the customer and provide detailed explanations.
[0737] By utilizing a generative AI model, the prompt message is processed in the form of, for example, "Extract the book themes this customer is looking for as keywords, and create a list of new releases that match those themes." In this way, personalized information provision that takes customer emotions into account is achieved.
[0738] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0739] Step 1:
[0740] The server analyzes documents and program source code accumulated within the company and stores them in a database in an easily searchable format. The input is unstructured internal company information, and the output is an indexed database. This process uses document analysis algorithms to structure the data along with metadata.
[0741] Step 2:
[0742] The user inputs a question into the device using natural language. The device receives this input and analyzes the context using a natural language processing engine. The input is the user's question text, and the output is extracted keywords and sentiment information. Specifically, the question is summarized through a process of word analysis and semantic understanding.
[0743] Step 3:
[0744] The device acquires the user's facial expressions and tone in real time through cameras and sensors, and identifies their emotional state using an emotion analysis engine. The input is real-time facial expression data, and the output is an emotion label (e.g., joy, confusion). This makes it possible to understand the user's mental focus.
[0745] Step 4:
[0746] The server receives keywords and sentiment information sent from the terminal, searches the database, and filters and prioritizes relevant information. The input is keywords and sentiment information, and the output is a list of highly relevant information. External data is also considered during processing using information retrieval, augmentation, and generation techniques.
[0747] Step 5:
[0748] The server generates natural language responses based on search results and adjusts the tone and content based on sentiment information. The input is a list of relevant information, and the output is a natural language response with an adjusted tone. Specifically, it uses a generative AI model to automatically generate documents and adjusts prompt sentences as needed.
[0749] Step 6:
[0750] The terminal presents the user with natural language responses received from the server. The input is the server's response, and the output is information displayed in a format easily understood by the user. This allows for real-time solutions tailored to the user's situation.
[0751] The specific processing unit 290 transmits the result of the specific processing to the robot 414. In the robot 414, the control unit 46A causes the speaker 240 and the controlled object 443 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.
[0752] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0753] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the robot 414.
[0754] Furthermore, the emotion identification model 59, acting as an emotion engine, may determine the user's emotion according to a specific mapping. Specifically, the emotion identification model 59 may determine the user's emotion according to a specific mapping, which is an emotion map (see Figure 9). Similarly, the emotion identification model 59 may also determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.
[0755] Figure 9 shows an emotion map 400 in which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. The closer to the center of the concentric circles, the more primitive the emotions are located. Further out of the concentric circles, emotions representing states and actions arising from mental states are located. Emotion is a concept that includes feelings and mental states. On the left side of the concentric circles, emotions that are generally generated from reactions occurring in the brain are located. On the right side of the concentric circles, emotions that are generally induced by situational judgment are located. Above and below the concentric circles, emotions that are generally generated from reactions occurring in the brain and induced by situational judgment are located. In addition, the emotion of "pleasure" is located on the upper side of the concentric circles, and the emotion of "displeasure" is located on the lower side. Thus, in the emotion map 400, multiple emotions are mapped based on the structure in which emotions arise, and emotions that are likely to occur simultaneously are mapped close together.
[0756] These emotions are distributed at the 3 o'clock position on the Emotion Map 400, and usually fluctuate between feelings of security and anxiety. In the right half of the Emotion Map 400, situational awareness takes precedence over internal feelings, resulting in a calm impression.
[0757] The inside of the Emotion Map 400 represents inner thoughts, while the outside represents actions. Therefore, the further you go from the outside of the Emotion Map 400, the more visible (expressed in actions) your emotions become.
[0758] Here, human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, it results in discomfort, and when they approach the ideal, it results in pleasure. Similarly, in robots, cars, motorcycles, etc., emotions can be created based on various balances, such as posture and battery level. When these balances deviate from the ideal, it results in discomfort, and when they approach the ideal, it results in pleasure. The emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on a system for analyzing brain physiological signals of speech emotion recognition and emotion, Tokushima University, doctoral dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map contains emotions belonging to a region called "response," where sensation is dominant. The right half of the emotion map contains emotions belonging to a region called "situation," where situational awareness is dominant.
[0759] The emotion map defines two emotions that promote learning. One is the emotion around the middle of the negative "repentance" and "reflection" on the situation side. In other words, it is when the robot experiences negative emotions such as "I never want to feel this way again" or "I don't want to be scolded again." The other is the emotion around the positive "desire" on the reaction side. In other words, it is when the robot has positive feelings such as "I want more" or "I want to know more."
[0760] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values representing each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple training data sets, which are combinations of user input and emotion values representing each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions located close together have similar values, as shown in the emotion map 900 in Figure 10. Figure 10 shows an example where multiple emotions such as "reassured," "calm," and "confident" have similar emotion values.
[0761] The above description primarily focuses on the functions of the data processing device 12 in relation to this disclosure. However, the system related to this disclosure is not necessarily implemented on a server. The system related to this disclosure may be implemented as a general information processing system. This disclosure may be implemented, for example, as a software program that runs on a personal computer or as an application that runs on a smartphone. The method related to this disclosure may be provided to users in SaaS (Software as a Service) format.
[0762] In the above embodiment, an example was given in which a specific process is performed by a single computer 22. However, the technology of this disclosure is not limited thereto, and a distributed processing of the specific process may be performed by multiple computers, including computer 22. For example, a data generation model 58 may be provided in an external device of the data processing device 12, and the external device may generate data according to the input data.
[0763] In the above embodiment, an example was given in which the specific processing program 56 is stored in the storage 32, but the technology of this disclosure is not limited thereto. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-temporary storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-temporary storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes specific processing according to the specific processing program 56.
[0764] 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.
[0765] Furthermore, it is not necessary to store the entirety of the specific processing program 56 in a storage device such as a server connected to the data processing device 12 via the network 54, or to store the entirety of the specific processing program 56 in the storage 32; it is acceptable to store only a portion of the specific processing program 56.
[0766] The following types of processors can be used as hardware resources to perform specific processing. Examples of processors include a CPU, a general-purpose processor that functions as a hardware resource to perform specific processing by executing software, i.e., a program. Other examples of processors include dedicated electrical circuits, such as FPGAs (Field-Programmable Gate Arrays), PLDs (Programmable Logic Devices), or ASICs (Application Specific Integrated Circuits), which have circuit configurations specifically designed to perform specific processing. All of these processors have built-in or connected memory, and all of them perform specific processing by using memory.
[0767] The hardware resource that performs a specific process may consist of one of these various processors, or it may consist of a combination of two or more processors of the same or different types (for example, a combination of multiple FPGAs, or a combination of a CPU and an FPGA). Alternatively, the hardware resource that performs a specific process may consist of a single processor.
[0768] Examples of configurations using a single processor include, firstly, a configuration in which one or more CPUs and software are combined to form a single processor, and this processor functions as a hardware resource that performs a specific process. Secondly, there is a configuration using a processor that realizes the functions of the entire system, including multiple hardware resources that perform a specific process, on a single IC chip, as exemplified by SoCs (System-on-a-chip). In this way, a specific process is realized using one or more of the above types of processors as hardware resources.
[0769] Furthermore, the hardware structure of these various processors can more specifically utilize electrical circuits that combine circuit elements such as semiconductor devices. Also, the specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps can be deleted, new steps added, or the processing order rearranged, as long as it does not deviate from the main purpose.
[0770] The descriptions and illustrations presented above are detailed explanations of the technical aspects of this disclosure and are merely examples of the technical aspects. For example, the above descriptions of the structure, function, operation, and effect are examples of the structure, function, operation, and effect of the technical aspects of this disclosure. Therefore, it goes without saying that you may delete unnecessary parts, add new elements, or replace elements in the descriptions and illustrations presented above, as long as you do not deviate from the essence of the technical aspects of this disclosure. Furthermore, in order to avoid confusion and facilitate understanding of the technical aspects of this disclosure, explanations of common technical knowledge and the like that do not require special explanation to enable the implementation of the technical aspects of this disclosure have been omitted from the descriptions and illustrations presented above.
[0771] All documents, patent applications, and technical standards described herein are incorporated by reference to the same extent as if each individual document, patent application, and technical standard were specifically and individually noted to be incorporated by reference.
[0772] The following is further disclosed regarding the embodiments described above.
[0773] (Claim 1)
[0774] A means of analyzing information held within a company and storing it in a database in a searchable format,
[0775] A means for analyzing natural language questions received from users and extracting relevant keywords,
[0776] A means for searching information in a database based on extracted keywords, and filtering and prioritizing it based on relevance,
[0777] A means of generating and providing natural language responses to users based on search results,
[0778] A system that includes this.
[0779] (Claim 2)
[0780] The system according to claim 1, characterized in that it includes means for utilizing Retrieval Augmented Generation technology to integrate information from external sources in filtering and prioritizing the search results.
[0781] (Claim 3)
[0782] The system according to claim 1, characterized in that the information stored in the database includes source code and technical documentation of software generated within the company.
[0783] "Example 1"
[0784] (Claim 1)
[0785] A means of analyzing data held within a company and storing it in a searchable format,
[0786] A means for analyzing natural language queries received from users and extracting relevant linguistic units,
[0787] A means for searching for information within management data based on extracted language units, and organizing and ranking it based on relevance,
[0788] A means of generating natural language responses using generative AI technology based on the search results and providing them to the user,
[0789] ...
[0790] A system that includes this.
[0791] (Claim 2)
[0792] The system according to claim 1, characterized in that it includes means for using information augmentation generation technology that utilizes knowledge from external information sources in organizing and ranking the search results.
[0793] (Claim 3)
[0794] The system according to claim 1, characterized in that the information stored in the management data includes source code information and technical documents for programs generated within the company.
[0795] "Application Example 1"
[0796] (Claim 1)
[0797] A means for analyzing information sources and storing them in a searchable format,
[0798] A means for extracting relevant words and phrases based on natural language questions received from users,
[0799] A means for searching for information within a source based on extracted terms, and for selecting and prioritizing information based on relevance,
[0800] A means of generating and providing natural language responses to users based on search results,
[0801] A means installed on the device that automatically provides procedures and methods in response to a question,
[0802] A system that includes this.
[0803] (Claim 2)
[0804] The system according to claim 1, characterized in that it includes means for using Retrieval Augmented Generation technology to integrate information from external sources in the selection and prioritization of the search results.
[0805] (Claim 3)
[0806] The system according to claim 1, characterized in that the information to be stored includes a plan and detailed documentation of the generated program.
[0807] "Example 2 of combining an emotion engine"
[0808] (Claim 1)
[0809] A means of analyzing information resources held within a company and storing them as a searchable data set,
[0810] A means for analyzing natural language queries received from users and extracting relevant identification information,
[0811] A means for searching for information within a data set based on extracted identification information, and for selecting and prioritizing information according to its relevance,
[0812] A sentiment analysis tool that analyzes the user's emotions and adjusts the tone and content of the generated response,
[0813] A means of generating a natural language response based on the search results and providing it to the user,
[0814] A system that includes this.
[0815] (Claim 2)
[0816] The system according to claim 1, characterized in that it uses a generative model that reflects the user's emotional information in generating the response.
[0817] (Claim 3)
[0818] The system according to claim 1, characterized in that the information stored in the data set includes source code and technical documentation of programs generated within the company.
[0819] "Application example 2 when combining with an emotional engine"
[0820] (Claim 1)
[0821] A means of analyzing information held within a company and storing it in a database in a searchable format,
[0822] A means for analyzing natural language questions received from users and extracting relevant keywords,
[0823] A means for searching information in a database based on extracted keywords, and filtering and prioritizing it based on relevance,
[0824] A means of generating and providing natural language responses to users based on search results,
[0825] A means of analyzing the user's emotions and adjusting the tone and content of the response based on that emotional information,
[0826] A system that includes this.
[0827] (Claim 2)
[0828] The system according to claim 1, characterized in that it includes means for utilizing information retrieval extension and generation technology that integrates information from external sources in filtering and prioritizing the search results.
[0829] (Claim 3)
[0830] The system according to claim 1, characterized in that the information stored in the database includes source code and technical documentation of programs generated within the company. [Explanation of symbols]
[0831] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Devices 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robots< / url:> < / url:> < / url:> < / url:>
Claims
1. A means of analyzing information held within a company and storing it in a database in a searchable format, A means for analyzing natural language questions received from users and extracting relevant keywords, A means for searching information in a database based on extracted keywords, and filtering and prioritizing it based on relevance, A means of generating and providing natural language responses to users based on search results, A system that includes this.
2. The system according to claim 1, characterized in that it includes means for utilizing Retrieval Augmented Generation technology to integrate information from external sources in filtering and prioritizing the search results.
3. The system according to claim 1, characterized in that the information stored in the database includes source code and technical documentation of software generated within the company.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A