Information processing system and control method
The information processing system addresses the challenge of generating accurate answers by incorporating state information acquisition and category identification to enhance response relevance and efficiency.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- NEC PERSONAL COMPUTERS LTD
- Filing Date
- 2024-10-01
- Publication Date
- 2026-04-13
AI Technical Summary
Conventional information processing systems struggle to generate accurate answers to user questions due to the generation of multiple responses assuming various situations, especially when external information is referenced, leading to inefficiencies and user frustration.
An information processing system that includes a state information acquisition unit to acquire the state of the object in question, a category identification unit to identify the question category, and a user support control unit to select and attach relevant state information to the question, generating an answer request using a language model to provide precise responses.
The system generates accurate and efficient answers by considering the state of the object in question, improving response relevance and reducing user effort by providing targeted solutions.
Smart Images

Figure 2026064175000001_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to an information processing system and a control method.
Background Art
[0002] In recent years, the accuracy of application programs such as chatbots that communicate with humans in natural language has improved and they have been put into practical use in various fields such as customer service and information retrieval. For example, Patent Document 1 discloses a technique that selects and learns the URLs of web pages on which external information such as existing materials, for example, various manuals and FAQ (Frequently Asked Questions), is displayed.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] However, in the conventional technology as described above, there is room for improvement in generating accurate answers to questions from users. For example, when generating an answer to a question by referring to external information, a large number of answers assuming various situations may be generated, and it may be difficult to obtain the expected answer. As a countermeasure, it is conceivable to add the state of the object of the question together with the question, but there is a problem that it becomes difficult to obtain an appropriate answer if a large number of states not directly related to the question are added.
[0005] The present invention has been made to solve the above problems, and an object thereof is to provide an information processing system and a control method capable of generating accurate answers to questions from users.
Means for Solving the Problems
[0006] To solve the above problems, one aspect of the present invention is an information processing system comprising: a state information acquisition unit that acquires state information indicating the state of an object in question in response to notification of question information, which is a question from a user regarding the object in question; a category identification unit that identifies a question category, which is the category of the question; and a user support control unit that selects the state information from the state information acquired by the state information acquisition unit that is classified into the question category identified by the category identification unit, generates an answer request information by attaching the selected state information to the question information, requests a language model to generate an answer to the question using the answer request information, and acquires the answer generated in response to the request.
[0007] To solve the above problems, one aspect of the present invention is an information processing method performed by a computer applied to an information processing system, comprising the steps of: a state information acquisition unit acquiring state information indicating the state of an object in question in response to notification of question information, which is a question from a user regarding the object in question; a category identification unit identifying a question category, which is the category of the question; and a user support control unit selecting state information from the state information acquired by the state information acquisition unit that is classified into the question category identified by the category identification unit, generating an answer request information by attaching the selected state information to the question information, requesting a language model to generate an answer to the question using the answer request information, and acquiring the answer generated in response to the request. [Effects of the Invention]
[0008] According to the above-described embodiment of the present invention, it is possible to generate accurate answers to questions from users. [Brief explanation of the drawing]
[0009] [Figure 1] This figure shows an example configuration of the information processing system 100 according to the first embodiment. [Figure 2] This figure shows an example of information stored in the external information storage unit 301 according to the first embodiment. [Figure 3] This figure shows an example of the main hardware configuration of a notebook PC according to the first embodiment. [Figure 4] This is a block diagram showing an example of the functional configuration of a notebook PC according to the first embodiment. [Figure 5] This figure shows an example of information stored in the state information storage unit 401 according to the first embodiment. [Figure 6] This is a sequence diagram showing an example of the operation of the notebook PC 1 according to the first embodiment. [Figure 7A] This figure shows an example of an image displayed on the notebook PC 1 according to the first embodiment. [Figure 7B] This figure shows an example of an image displayed on the notebook PC 1 according to the first embodiment. [Figure 8A] This figure shows an example of an image displayed on the notebook PC 1 according to the first embodiment. [Figure 8B] This figure shows an example of an image displayed on the notebook PC 1 according to the first embodiment. [Figure 9] This figure shows an example of information stored in the external information storage unit 301 according to the second embodiment. [Figure 10] This is a block diagram showing an example of the functional configuration of a notebook PC according to the second embodiment. [Figure 11] This figure shows an example of information stored in the state information storage unit 401 according to the second embodiment. [Figure 12A] This is a sequence diagram showing an example of the operation of the notebook PC 1 according to the second embodiment. [Figure 12B] This is a sequence diagram showing an example of the operation of the notebook PC 1 according to the second embodiment. [Figure 13] This figure shows an example configuration of the information processing system 100 according to the third embodiment. [Figure 14A] This is a sequence diagram showing an example of the operation of Notebook PC 1 according to the third embodiment. [Figure 14B]It is a sequence diagram showing an example of the operation of the notebook PC 1 according to the third embodiment. [Figure 15] It is a diagram showing a configuration example of the information processing system 100 according to the fourth embodiment. [Figure 16] It is a block diagram showing an example of the functional configuration of the notebook PC according to the fourth embodiment. [Figure 17A] It is a sequence diagram showing an example of the operation of the notebook PC 1 according to the fourth embodiment. [Figure 17B] It is a sequence diagram showing an example of the operation of the notebook PC 1 according to the fourth embodiment.
Mode for Carrying Out the Invention
[0010] Hereinafter, an information processing system and a control method according to an embodiment of the present invention will be described with reference to the drawings.
[0011] (First Embodiment) First, the first embodiment will be described. FIG. 1 is a diagram showing a configuration example of the information processing system 100 according to the first embodiment. As shown in FIG. 1, the information processing system 100 includes a notebook PC 1, a server 2, an external database 3, and a language model server 4. The notebook PC 1 is a notebook-type PC (personal computer). In the present embodiment, the notebook PC 1 is an example of an information processing device. The server 2 is an information processing device that can communicate with the notebook PC 1, the external database 3, and the language model server 4. The server 2 has a server-side user support control unit 201 that performs user support for the notebook PC 1. The server-side user support control unit 201 that performs user support realizes the function of a support application in cooperation with a client-side user support control unit 101 of the notebook PC 1 described later. The language model server 4 generates answers to questions using a language model, such as a large-scale language model called an LLM (Large Language Model). For example, GPT-4 (registered trademark) can be used as the language model server 4. External database 3 is a database having an external information storage unit 301. The external information storage unit 301 stores external information. The external information is information related to notebook PC 1.
[0012] Figure 2 shows an example of external information according to the first embodiment. As shown in this figure, the external information stores information related to Notebook PC 1 as the object of inquiry, such as the Notebook PC 1 manual, instruction manual, FAQ (Frequently Asked Questions), etc., such as documents. In addition, it may also include information that is not disclosed to the general user, such as design specifications, inspection specifications, etc., which describes usage methods, operation methods, maintenance, etc. Furthermore, the external information may include information such as manuals for compatible computers, not just computers with the same model name as Notebook PC 1 as the object of inquiry.
[0013] The information processing system 100 is a system that provides user support for the notebook PC 1 using a language model. In this embodiment, the notebook PC 1 is an example of the object to be questioned. Notebook PC1 is equipped with an application program for user support (hereinafter referred to as the support app). When the support app is launched, a screen for receiving questions, such as a chat screen, is displayed on Notebook PC1. The user enters a question into the support app's chat screen, for example, describing a situation where mouse operations on Notebook PC1 are not being reflected as "the mouse is not working." When a question is entered into the chat screen, an answer is generated using a language model via Server 2, and the generated answer is displayed on the chat screen.
[0014] In this embodiment, a technique known as RAG (Retrieval-Augmented Generation) is used to have a language model generate answers by referencing external information. For example, if a user enters the question "My mouse isn't working" into the chat screen of the support application, Server 2 notifies Language Model Server 4 with a prompt instructing it to generate an answer by referring to external information, such as "What should I do when my mouse isn't working? Please refer to external information to generate an answer." Generally, language models learn patterns and relationships based on training data and generate content (in this case, answers to questions) based on what they have learned. Therefore, they may generate incorrect answers to questions about up-to-date or unique information that they haven't learned. As a countermeasure, by using RAG, the language model can generate answers using external information in addition to the existing knowledge gained through training, thereby improving the accuracy of the answers. Furthermore, with RAG, instead of adding external information to the language model's learning, external information is treated as separate information distinct from the language model and referenced from the outside. This allows for the confidentiality of external information to be maintained even when using language models that can be used by an unspecified number of users, such as commercial ChatGPT, and enables the generation of highly accurate answers by using confidential information, such as manufacturer-specific information, within a limited scope such as within a company's own system.
[0015] The process by which the language model uses RAG to generate responses is as follows: Step 1: The process in which the user enters a "question". Step 2: The process of searching for information related to the "question" from "external information". Step 3: The process of generating "answers" based on information searched and extracted from "external information". Step 4: The process of presenting the "answer" to the user.
[0016] For example, in the second step, vector similarity can be used to search for information related to the "question" from "external information." In this case, each piece of information included in the "external information" (e.g., documents) is mapped to a vector space formed with the feature quantities of the text as axes. Then, by extracting information that is close to the position of the text included in the "question" in the vector space, for example, at a distance below a threshold, as information related to the "question," information related to the "question" can be searched from "external information."
[0017] Now, let me explain the problems with this embodiment. When using RAG to generate answers by referencing external information, it can result in a large number of answers being generated that assume a wide variety of situations.
[0018] For example, suppose the mouse's battery level is low, resulting in a situation where mouse operations are not reflected on laptop PC 1. The user is unaware that the mouse's battery level is low and doesn't know how to fix it, so they open the support app and type the question "My mouse isn't working" into the chat screen. In such cases, the user may be presented with the following response: Question: My mouse isn't working. Answer: If your mouse is not working, try the following steps: Please check that the mouse switch is turned on. Please check that the mouse is connected to the computer. Please check if Bluetooth® is turned on. • Turn the mouse's On / Off switch off once, then turn it back on. Please replace the batteries in your mouse.
[0019] In this case, since the mouse battery is low, the desired response would be "Please replace the mouse battery." However, the language model cannot recognize this as the most appropriate response because it does not understand that the mouse battery is low. Therefore, it generates numerous responses for various situations using information about the mouse extracted from external sources and documents describing the circumstances under which the mouse is not working. This is time-consuming for the user, as they must try the suggestions in each of the multiple responses. It should be noted that even without using RAG, a large number of responses like those described above may be generated depending on the training content of the language model. In other words, the problems of this embodiment described above can occur regardless of whether or not RAG is used.
[0020] In contrast, in this embodiment, the language model is notified of a question that includes the state of the object being questioned (in this case, the notebook PC 1). The state of the notebook PC 1 is, for example, that the mouse battery level is low. In this embodiment, if the user enters the question "The mouse isn't working" into the chat screen of the support application, Server 2 notifies Language Model Server 4 of a prompt such as "What should I do if the mouse isn't working? Please refer to external information to generate an answer. The mouse battery is low." Thus, by adding the information "the mouse battery is low" to the status of Notebook PC 1, the language model can recognize that the mouse battery level is low. From the information extracted from external sources, the language model can generate the most appropriate response for this situation, "Please replace the mouse battery." As a result, the information processing system 100 of this embodiment can generate an accurate response to a user's question.
[0021] The above example illustrates a situation where a question is asked when the mouse battery level is low, but any other information can be used as the status of Notebook PC1. For example, the power status, connection status, and whether or not features aimed at improving user convenience regarding display and operation are enabled can be used as the status of Notebook PC1. This is because if the user is unaware of the status of Notebook PC1, unintended situations are likely to occur, and it is anticipated that the user will not know how to deal with them and will contact user support for assistance. For example, the following are some of the display and operation functions available on Notebook PC1. • Color filter function to improve screen visibility • Filter key function to reduce the response of key presses. • NumLock to enable numeric keypad input • Caps Lock to switch between uppercase and lowercase input. • Keyboard layout function that supports either a Japanese or English keyboard. • Actions associated with the primary click of the mouse In addition to the above, status information may also include the system volume level and display brightness level of Notebook PC1. Additionally, the power and connection status of Notebook PC1 are as follows: • AC adapter connection status • Whether or not power is being supplied from the AC adapter. • Battery charge threshold information • Battery health • Battery degradation status Whether peak shifting is enabled or not • Battery level • Battery level of the mouse (for wireless mice) In this context, peak shifting for computers refers to a function that stores power in a rechargeable battery during off-peak hours (for example, at night) and then switches off the AC power supply during peak hours (for example, between 1pm and 4pm during the day) to operate using the battery as the power source.
[0022] Figure 3 shows an example of the main hardware configuration of the notebook PC 1 according to the first embodiment. As shown in Figure 3, the notebook PC 1 comprises a CPU 11, main memory 12, video subsystem 13, display unit 14, chipset 21, BIOS memory 22, HDD 23, audio system 24, communication unit 25, USB connector 26, imaging unit 27, embedded controller 31, input unit 32, and power supply circuit 33. In this embodiment, the CPU 11 and chipset 21 correspond to the main control unit 10.
[0023] The CPU (Central Processing Unit) 11 performs various calculations under program control and controls the entire notebook PC 1. Main memory 12 is writable memory used as a reading area for the CPU 11's executable program, or as a work area for writing processing data for the executable program. Main memory 12 is composed of, for example, multiple DRAM (Dynamic Random Access Memory) chips. This executable program includes the OS (operating system), various drivers for hardware operation of peripheral devices, various services / utilities, application programs, etc.
[0024] The video subsystem 13 is a subsystem for implementing functions related to image display and includes a video controller. This video controller processes drawing commands from the CPU 11, writes the processed drawing information to video memory, reads this drawing information from video memory, and outputs it to the display unit 14 as drawing data (display data). The display unit 14 is, for example, a liquid crystal display, and displays a screen based on drawing data (display data) output from the video subsystem 13.
[0025] The chipset 21 includes controllers for USB (Universal Serial Bus), Serial ATA (AT Attachment), SPI (Serial Peripheral Interface) bus, PCI (Peripheral Component Interconnect) bus, PCI-Express bus, and LPC (Low Pin Count) bus, and multiple devices are connected to it. In Figure 1, as examples of devices, the BIOS memory 22, HDD 23, audio system 24, communication unit 25, USB connector 26, and imaging unit 27 are connected to the chipset 21. The chipset 21 also has an RTC (Real Time Clock) function.
[0026] The BIOS (Basic Input Output System) memory 22 consists of electrically rewritable non-volatile memory such as EEPROM (Electrically Erasable Programmable Read Only Memory) or flash ROM. The BIOS memory 22 stores the BIOS and system firmware for controlling the embedded controller 31, etc.
[0027] An HDD (Hard Disk Drive) 23 (an example of a non-volatile storage device) stores the OS, various drivers, various services / utilities, application programs, and various data. The audio system 24 records, plays back, and outputs sound data.
[0028] The communication unit 25 connects to a communication network via a wireless LAN (Local Area Network) or a wired LAN and performs data communication. The communication unit 25 may also be configured to include communication devices that perform wireless communication such as Bluetooth®. For example, the communication unit 25 can communicate with Bluetooth-compatible wireless mice, wireless keyboards, etc., using Bluetooth®.
[0029] USB connector 26 is a connector for connecting peripheral devices that use USB. The imaging unit 27 is a webcam and captures images. The imaging unit 27 is connected to the chipset 21, for example, via a USB interface.
[0030] The embedded controller 31 is a one-chip microcomputer that monitors and controls various devices (peripherals, sensors, etc.) regardless of the system state of the notebook PC 1. The embedded controller 31 also has a power management function that controls the power supply circuit 33. The embedded controller 31 consists of a CPU, ROM, RAM, etc. (not shown), and is equipped with multiple channels of A / D input terminals, D / A output terminals, a timer, and digital input / output terminals. The embedded controller 31 is connected to, for example, the input unit 32 and the power supply circuit 33 via these input / output terminals, and the embedded controller 31 controls the operation of these components.
[0031] The input unit 32 is, for example, an input device such as a keyboard, a pointing device, or a touchpad. The power supply circuit 33 includes, for example, a DC / DC converter, a charge / discharge unit, a battery unit, and an AC / DC adapter, and converts the DC voltage supplied from the AC / DC adapter or battery unit into multiple voltages necessary to operate the notebook PC 1. The power supply circuit 33 also supplies power to various parts of the notebook PC 1 based on control from the embedded controller 31.
[0032] Next, the functional configuration of the notebook PC 1 according to this embodiment will be described with reference to Figure 4. Figure 4 is a block diagram showing an example of the functional configuration of the notebook PC 1 according to the first embodiment.
[0033] The main control unit 10 is a functional unit realized by the CPU 11 and chipset 21 executing programs stored in the main memory 12, and it performs various processes based on the OS (for example, Windows®). The main control unit 10 includes a client-side user support control unit 101 and a status information acquisition unit 102.
[0034] The status information acquisition unit 102 acquires status information indicating the state of the notebook PC 1 (the object being questioned) in response to the acquisition of question information. The question information is information indicating a question from the user regarding the notebook PC 1 (the object being questioned), and in this case, it is the text information of the question entered into the chat screen of the support application. The status information acquisition unit 102 stores the acquired status information in the status information storage unit 401.
[0035] Here, the status information acquisition unit 102 may acquire status information according to the control of the client-side user support control unit 101. In this case, the client-side user support control unit 101 causes the status information acquisition unit 102 to acquire status information when question information is acquired. Alternatively, the status information acquisition unit 102 may acquire status information periodically. In this case, the client-side user support control unit 101 refers to the status information storage unit 401 and acquires the latest status information when question information is acquired.
[0036] The client-side user support control unit 101 works in conjunction with the server-side user support control unit 201 to implement the functions of the support application. Furthermore, the main control unit 10 may also be provided with a client-side user support control unit 101 and a server-side user support control unit 201. In this case, the server 2 can be omitted from the information processing system 100. In this embodiment, it is sufficient that the client-side user support control unit 101 and the status information acquisition unit 102 work together to realize the functions of the support application. Some of the functions of the client-side user support control unit 101 may be executed by the server-side user support control unit 201, or some or all of the functions of the server-side user support control unit 201 may be executed by the client-side user support control unit 101. The following describes the functions of the client-side user support control unit 101, as well as the functions of the server-side user support control unit 201.
[0037] First, the server-side user support control unit 201 registers external information in the external database 3. The server-side user support control unit 201 collects information about Notebook PC 1, which is the target of support in the support application, and stores the collected information as external information in the external database 3. The information about Notebook PC 1 may be collected by a person such as a staff member, collected using an information collection tool, or a combination of these.
[0038] The client-side user support control unit 101 displays the chat screen of the support application on the display unit 14 in response to the user performing an operation to launch the support application.
[0039] The client-side user support control unit 101 generates response request information. Response request information is information obtained by adding status information to question information. For example, when a question is entered into the chat screen of the support application, the client-side user support control unit 101 acquires the text information of the entered question as question information. The client-side user support control unit 101 then adds the latest status information to the acquired question information and generates response request information.
[0040] Here, the client-side user support control unit 101 may convert the state information acquired by the state information acquisition unit 102 into a language that the language model can interpret (in this case, natural language), and generate response request information by adding the converted state information to the question information. For example, status information is binary information indicating whether a display or operation function on Notebook PC 1 is enabled or disabled. In this case, the status information is either 0 (zero), indicating that the function is disabled, or 1, indicating that the function is enabled. Alternatively, the status information could be a numerical (hexadecimal) representation of the battery level. Natural language models cannot understand the meaning of such binary or numerical status information. Therefore, the client-side user support control unit 101 converts the status information into natural language that the language model can interpret. For example, if the status information corresponding to a certain function is 0 (zero), the client-side user support control unit 101 converts it into natural language indicating that "the function is disabled." Alternatively, it converts a numerical value indicating the battery level into natural language indicating whether the battery level is low or not.
[0041] The client-side user support control unit 101 sends the generated response request information to the server-side user support control unit 201.
[0042] The server-side user support control unit 201 requests the language model to generate an answer to a question using the answer request information. The server-side user support control unit 201 receives the answer request information from the client-side user support control unit 101. The server-side user support control unit 201 generates a prompt using RAG based on the received answer information. The server-side user support control unit 201 generates a prompt that requests the language model to generate an answer to a question by referring to external information based on the answer request information. For example, the status information acquisition unit 102 generates a prompt such as, "What should I do if the mouse is not moving? Please generate an answer by referring to external information. The mouse battery level is low." The server-side user support control unit 201 sends the generated prompt to the language model server 4. As a result, server 2 sends a prompt to language model server 4.
[0043] When the language model server 4 receives a prompt from server 2, it generates an answer. For example, the language model server 4 performs the second step described above, which is the step of searching for information related to the "question" from "external information," and the third step, which is the step of generating an "answer" based on the information searched and extracted from "external information," and generates an answer. The language model server 4 sends the generated answer to server 2.
[0044] The status information acquisition unit 102 acquires the response generated by the language model in response to the request. The status information acquisition unit 102 receives the response from the language model server 4 and sends the received response to the client-side user support control unit 101. The client-side user support control unit 101 displays the received response on the chat screen of the support application displayed on the display unit 14. As a result, the answer to the question asked by the user is displayed on the chat screen of the support application.
[0045] The memory unit 40 is a memory unit implemented by, for example, the main memory 12 or the HDD 23, and stores various information used by the notebook PC 1. The memory unit 40 temporarily stores various information used by various application programs, for example. The memory unit 40 also stores various OS setting information. The memory unit 40 includes a state information storage unit 401. The state information storage unit 401 stores state information.
[0046] Figure 5 shows an example of information stored in the state information storage unit 401 according to the first embodiment. As shown in this example, the state information storage unit 401 stores information in which acquired values are associated with state information. The status information is information associated with the values acquired by the status information acquisition unit 102 for each item, such as the color filter function, filter key function, NumLock status, CapsLock status, whether the keyboard layout is set to English keyboard, and operations associated with the primary click of the mouse, as well as the power and connection status of the notebook PC 1.
[0047] Figure 6 is a sequence diagram showing an example of the operation of the notebook PC 1 according to the first embodiment. The server-side user support control unit 201 of server 2 registers external information as the external information storage unit 301 of the external database 3 (step S100). The client-side user support control unit 101 of Notebook PC 1 acquires a question from the user (step S101). The status information acquisition unit 102 of Notebook PC 1 acquires the status information of Notebook PC 1 (step S102). The client-side user support control unit 101 of Notebook PC 1 sends a request for an answer to Server 2, with the status information added to the question information (step S103). Server 2 receives a response request from Notebook PC 1. Server 2's server-side user support control unit 201 generates a prompt. Based on the response request information received from Notebook PC 1, the server-side user support control unit 201 generates a prompt requesting that the user refer to external information to provide a response (step S104). Server 2 sends the prompt to Language Model Server 4 (step S105). The language model server 4 retrieves information related to the question in the prompt from external information based on the prompt received from server 2 (step S106). The language model server 4 generates an answer using the information retrieved and extracted from external information (step S107). The language model server 4 sends the generated answer to server 2 (step S108). Server 2 receives the response from language model server 4. Server-side user support control unit 201 of Server 2 sends the response received from language model server 4 to notebook PC 1 (step S109). Notebook PC 1 receives the answer from server 2. The client-side user support control unit 101 of notebook PC 1 displays the answer received from server 2 on the display unit 14 (step S110).
[0048] The sequence described above illustrates the case where a response is generated using RAG, but it is not limited to this. In this embodiment, it is sufficient that a response is generated using response request information with status information attached. For example, in step S104, the server-side user support control unit 201 may generate a prompt requesting that a response be generated based on the response request information received from the notebook PC 1.
[0049] Here, we will explain examples of answers displayed on the chat screen of the support application using Figures 7 (Figures 7A and 7B) and 8 (Figures 8A and 8B). Figures 7 and 8 are diagrams showing examples of images displayed on Notebook PC 1 according to the first embodiment. Figures 7 and 8 show examples of answers when the question "No sound is coming from the speaker" is entered into the chat screen of the support application on Notebook PC 1. Figure 7 shows an example of an answer when the system volume level obtained as status information is 0 (zero), that is, set to mute. Figure 8 shows an example of an answer when the system volume level obtained as status information is 48, that is, not set to mute. Figure 7A shows that the device is muted, and the suggested response is to unmute it and adjust the volume. As shown in this example, the response may include information obtained as status information. Figure 7B shows an example where the operation screen for unmuting is displayed in front of the chat screen of the support app. This objectively demonstrates that the system volume level is 0 (zero). Furthermore, by displaying the operation screen for the suggested operation (increasing the volume level), it becomes easier to try the suggested operation. Figure 8A shows the answer that the system volume is set to 48 and is not muted, no sound device is connected to Notebook PC1, no headphones are connected to Notebook PC1, and the microphone is neither muted nor disabled. In other words, it is set to output sound from the speakers and is not set to mute or otherwise prevent sound output. Furthermore, the answer suggests that the volume may be too low to be heard and proposes adjusting the volume. Figure 8B shows an example where the operation screen for unmuting is displayed in front of the chat screen of the support app. This objectively demonstrates that the system volume level is 48. Furthermore, by displaying the operation screen for the suggested operation (increasing the volume level), it becomes easier to try the suggested operation. Thus, the client-side user support control unit 101 may, for example, in step S110 of the sequence described above, display the answer on the chat screen and also display the operation screen for the suggested operation in the answer. Displaying the operation screen makes it easier to try out the suggested operation.
[0050] As described above, the information processing system 100 according to the first embodiment comprises a state information acquisition unit 102, a client-side user support control unit 101, and a server-side user support control unit 201. The state information acquisition unit 102 acquires state information indicating the state of the object to be questioned (notebook PC 1) in response to receiving question information from a user, which is a question about the object to be questioned (notebook PC 1). The client-side user support control unit 101 generates answer request information by adding state information to the question information. The server-side user support control unit 201 requests the language model (language model server 4) to generate an answer to the question using the answer request information, and acquires the answer generated in response to the request. As a result, the information processing system 100 according to the first embodiment can generate an answer to a question about the object to be questioned (notebook PC 1) according to the state of the object to be questioned (notebook PC 1), and can therefore generate an accurate answer to a question from a user.
[0051] Furthermore, the information processing system 100 of the first embodiment also includes a database (external database 3) that stores external information, which is information related to the object being questioned (notebook PC 1). The server-side user support control unit 201 requests the generation of an answer to the question by referring to the external information based on the answer request information. As a result, the information processing system 100 of the first embodiment can generate an answer using RAG after understanding the state of the object being questioned (notebook PC 1), thereby improving the accuracy of the answer.
[0052] Furthermore, in the information processing system 100 of the first embodiment, the object of the question (notebook PC 1) is the information processing device (notebook PC 1). The state information acquisition unit 102 acquires the state of the information processing device (notebook PC 1) and the peripheral devices connected to the information processing device (notebook PC 1) as the state of the object of the question (notebook PC 1). As a result, the information processing system 100 of the first embodiment can generate an answer that takes into account not only the state of the object of the question (information processing device) but also the state of the peripheral devices connected to it, thereby improving the accuracy of the answer.
[0053] Furthermore, in the information processing system 100 of the first embodiment, the client-side user support control unit 101 generates response request information by adding information obtained by the state information acquisition unit 102, converted into a language that the language model can interpret, to the question information. As a result, in the information processing system 100 of the first embodiment, even if the state information is represented as binary or numerical, it can be converted into information that can be understood by natural language, and the language model server 4 can understand the state of the question target (notebook PC 1) and generate an answer.
[0054] Furthermore, in the information processing system 100 of the first embodiment, the client-side user support control unit 101 displays an operation screen for performing the operation suggested in the response on the information processing device (notebook PC 1), which is the subject of the question (notebook PC 1). This makes it easy to try out the operation suggested in the response in the information processing system 100 of the first embodiment.
[0055] Furthermore, the control method according to the first embodiment comprises a state information acquisition step, a client-side user support control step, and a server-side user support control step. In the state information acquisition step, the state information acquisition unit 102 acquires state information indicating the state of the object to be questioned (notebook PC 1) in response to the acquisition of question information from the user, which is a question about the object to be questioned. In the client-side user support control step, the client-side user support control unit 101 generates answer request information by adding state information to the question information. In the server-side user support control step, the server-side user support control unit 201 requests the language model (language model server 4) to generate an answer to the question using the answer request information, and acquires the answer generated in response to the request. Thus, the information processing method according to the first embodiment achieves the same effects as described above.
[0056] (Second embodiment) Next, a second embodiment will be described. In the following, the configurations that differ mainly from the first embodiment will be described, and the same reference numerals will be used for components that are the same as in the first embodiment, and their descriptions will be omitted.
[0057] This embodiment differs from the first embodiment in that the status information to be attached to the response request information is selected according to the content of the question. As described in the first embodiment, the status information includes various information such as the display and operation functions of the notebook PC 1, and the power and connection status. If such various information is added to the question information to create the answer request information, it may result in the inclusion of a lot of status information unrelated to the question, which can reduce the accuracy of the answer. For example, in response to a question about the mouse, an answer may be generated that is not directly related to the question, such as a suggestion to brighten the display screen by charging the battery based on status information such as the screen being dark because the battery level on the PC is low. Furthermore, there may be limitations on the number of characters that can be entered in a prompt. For example, in commercial systems like ChatGPT, there may be a limit on the maximum number of characters that can be entered in a prompt, or the more characters you enter in a prompt, the higher the charge. In such cases, if too much state information is added, the language model may not accept the prompt, or the costs may increase. As a countermeasure, in this embodiment, status information to be attached to the response request information is selected according to the content of the question.
[0058] Figure 9 is a block diagram showing an example of the functional configuration of a notebook PC according to the second embodiment. As shown in Figure 9, the notebook PC 1 of this embodiment includes a category identification unit 103. The category identification unit 103 identifies the category (question category) of the question received from the user. The client-side user support control unit 101 selects state information that is classified into the question category identified by the category identification unit 103 from the state information acquired by the state information acquisition unit 102, and generates answer request information by attaching the selected state information to the question information. The method by which the category identification unit 103 identifies the question category will be explained in detail later.
[0059] First, as a premise of this embodiment, state information is classified into categories. Figure 10 shows an example of information stored in the state information storage unit 401 according to the second embodiment. As shown in this example, the state information storage unit 401 stores information in which a category and an acquired value are associated with the state information. The categories here are set in advance, for example, according to the expected question or according to the content of the group of information that can be acquired as state information. In this figure, an example is shown in which the state information is classified into categories such as "PC main unit," "keyboard," "mouse," and "power supply." In this way, the notebook PC 1, which is the subject of the question, and peripheral devices such as a mouse and keyboard connected to the notebook PC 1 can each be classified as categories. In this diagram, the color filter function and filter key function are categorized under "PC body". The status of NumLock, CapsLock, and keyboard layout are each categorized under "Keyboard". The primary click of the mouse is categorized under "Mouse". Status information regarding the AC adapter and battery is categorized under "Power".
[0060] Furthermore, in this embodiment, external information is classified into categories equivalent to those of state information. The server-side user support control unit 201 registers external information in the external database 3, associating it with information indicating classification results where the status information is categorized into categories equivalent to the category. Figure 11 shows an example of information stored in the external information storage unit 301 according to the second embodiment. As shown in this diagram, among the external information, Manual A is classified under "PC main unit," and Instruction Manual B is classified under "Keyboard."
[0061] Here, we will explain how the category identification unit 103 identifies the question category. The category identification unit 103 identifies the question category by utilizing the fact that information related to the question is retrieved in the RAG. Specifically, in the information processing system 100 of this embodiment, a pre-answer request is made, for example, by asking the language model to generate an answer to a question (without adding state information). The system obtains the answer (pre-answer) generated in response to the pre-answer request, along with the external information referenced when generating that answer (pre-answer). The category identification unit 103 sets the category associated with the external information referenced when generating the pre-answer as the question category. Next, the information processing system 100 generates response request information by adding state information belonging to a category equivalent to the question category to the question information, and generates a prompt that includes the question information and state information belonging to a category equivalent to the question category.
[0062] Figure 12 (Figures 12A and 12B) is a sequence diagram showing an example of the operation of the notebook PC 1 according to the second embodiment. As shown in Figure 12A, the server-side user support control unit 201 of server 2 registers the information associated with the classification results obtained by classifying external information by category as the external information storage unit 301 of the external database 3 (step S200). The client-side user support control unit 101 of Notebook PC 1 acquires a question from the user (step S201). The status information acquisition unit 102 of Notebook PC 1 acquires the status information of Notebook PC 1 (step S202). The status information acquisition unit 102 stores the acquired status information in the status information storage unit 401. The client-side user support control unit 101 of Notebook PC 1 sends a pre-answer request to Server 2 (step S203). The pre-answer request is the question information itself without the status information added. Server 2 receives a pre-response request from Notebook PC 1. Server 2's server-side user support control unit 201 generates a prompt. Based on the pre-response request information received from Notebook PC 1, the server-side user support control unit 201 generates a prompt requesting that the user refer to external information to provide a response (step S204). Server 2 sends the prompt to Language Model Server 4 (step S205). The language model server 4 retrieves information related to the question in the prompt from external information based on the prompt received from server 2 (step S206). The language model server 4 generates a preliminary answer using the information retrieved and extracted from external information (step S107). The language model server 4 sends the generated answer (preliminary answer) and the external information referenced when generating the preliminary answer to server 2 (step S208). Server 2 receives the pre-answer and the external information referenced when generating the pre-answer from the language model server 4. The server-side user support control unit 201 of Server 2 transmits the pre-answer received from the language model server 4 and the external information referenced when generating the pre-answer to Note PC 1 (step S209).
[0063] As shown in Figure 12B, Notebook PC 1 receives a pre-answer and external information referenced when generating the pre-answer from Server 2 (Step S210). The category identification unit 103 of Notebook PC 1 identifies the question category based on the category associated with the external information referenced when generating the pre-answer (Step S211). The client-side user support control unit 101 of Notebook PC 1 sends a response request to Server 2, adding status information belonging to a category equivalent to the question category to the question information (Step S212). Server 2 receives a response request from Notebook PC 1. Server 2's server-side user support control unit 201 generates a prompt. Based on the response request information received from Notebook PC 1, the server-side user support control unit 201 generates a prompt requesting that the user refer to external information to provide a response (step S213). Server 2 sends the prompt to Language Model Server 4 (step S214). The language model server 4 retrieves information related to the question in the prompt from external information based on the prompt received from server 2 (step S215). The language model server 4 generates an answer using the information retrieved and extracted from external information (step S216). The language model server 4 sends the generated answer to server 2 (step S217). Server 2 receives the response from language model server 4. Server-side user support control unit 201 of Server 2 sends the response received from language model server 4 to notebook PC 1 (step S218). Notebook PC 1 receives the answer from server 2. The client-side user support control unit 101 of notebook PC 1 displays the answer received from server 2 on the display unit 14 (step S219).
[0064] While the above example illustrates how to identify a question category based on a pre-answer, the method is not limited to this. The category identification unit 103 may also identify the question category by presenting a list of question categories on the chat screen and allowing the user to select one.
[0065] Furthermore, based on the pre-answer, it may be determined that the question falls into a category where status information does not need to be added. For example, a question like "The mouse isn't working," as described in the first embodiment, would be categorized as "mouse." However, a question like "Please tell me the phone number for the support center" does not need to be added because it is unrelated to the enabled / disabled status of the functions on Notebook PC 1. In such cases, in this embodiment, a request for a final answer is not made, and the pre-answer is displayed on the chat screen as an answer presented to the user. Specifically, in the information processing system 100 of this embodiment, in step S200, if the external information contains information that is not directly related to the status of the notebook PC 1, such as the telephone number of the support center, the server-side user support control unit 201 classifies the information as "uncategorized" and stores it in the external information storage unit 301. In step S210, if the category of the external information referenced for generating the pre-answer is "uncategorized," the process shown in step S212 is not executed. As a result, the information processing system 100 does not execute the processes shown in steps S213 to S218. The client-side user support control unit 101 of the notebook PC 1 displays the pre-answer on the display unit 14 (step S219).
[0066] As described above, the information processing system 100 according to the second embodiment comprises a state information acquisition unit 102, a category identification unit 103, a client-side user support control unit 101, and a server-side user support control unit 201. The state information acquisition unit 102 acquires state information indicating the state of the object to be questioned (notebook PC 1) in response to the acquisition of question information from the user, which is a question about the object to be questioned. The category identification unit 103 identifies the question category. The client-side user support control unit 101 selects state information that is classified into the question category identified by the category identification unit 103 from the state information acquired by the state information acquisition unit 102. The client-side user support control unit 101 generates answer request information by adding the selected state information to the question information. The server-side user support control unit 201 requests the language model (language model server 4) to generate an answer to the question using the answer request information, and acquires the answer generated in response to the request. As a result, the information processing system 100 according to the second embodiment can add only state information related to the question, and not add state information unrelated to the question to the question information. This prevents the generation of answers using irrelevant status information, allowing for the creation of accurate answers to user questions. Furthermore, it avoids the unnecessary increase in prompt length caused by including unnecessary information.
[0067] Furthermore, the information processing system 100 according to the second embodiment further includes an external database 3 that stores external information, which is information relating to the object of the question. The state information acquisition unit 102 classifies the external information into categories equivalent to the categories of the state information. The state information acquisition unit 102 stores information that associates the classified categories with the external information in the external database 3. The server-side user support control unit 201 requests the language model to generate a preliminary answer to the question by referring to the external information based on the question information, in response to the acquisition of question information. The server-side user support control unit 201 acquires the preliminary answer generated in response to the request, along with the external information that was referenced in the generation of the preliminary answer. The category identification unit 103 identifies the question category based on the categories associated with the external information referenced in the generation of the preliminary answer. As a result, in the information processing system 100 according to the second embodiment, the question category can be easily identified based on the categories of the external information referenced in the preliminary answer.
[0068] (Third embodiment) Next, a third embodiment will be described. In the following, the configurations that differ from the first and second embodiments will be mainly described, and the same reference numerals will be used for components that are the same as those in the first and second embodiments, and their descriptions will be omitted.
[0069] This embodiment differs from the first embodiment in that it limits the scope of external information referenced in generating the answer. As described in the first embodiment, RAG searches for "external information" using vector similarity. Therefore, if the vector similarity is close, there is a possibility that unexpected documents consisting of strings other than the keywords included in the question may be extracted. When an answer is generated using an unexpected document that has been searched and extracted in this way, the accuracy of the generated answer will decrease. Here, in the case where the object being questioned is an information processing device (notebook PC 1), as described in the first and second embodiments, it is considered unlikely that the unexpected documents described above would be extracted. However, this issue becomes apparent when applying it to support applications that answer questions about subjects that require examining and answering similar phenomena from multiple perspectives. For example, in a case where a support application is provided to employees to assist with business-related matters such as contracts with other companies, collaborations, company regulations, and internal procedures, it is expected that users (employees) will input questions about concerns from various perspectives such as "cost," "regulations," "personnel," and "legal." In such a case, if the answer to a question about the "cost" required for a contract with another company is generated from a "legal" perspective, the answer will not be what the user wants, and the accuracy of the answer will decrease. As a countermeasure, in this embodiment, the scope of external information referenced in generating the answer is limited depending on the content of the question. The following explanation uses the example of an information processing device (notebook PC 1) as the subject of the inquiry, but is not limited to this. This embodiment can be applied to any subject of inquiry whose external information can be classified into multiple categories.
[0070] Figure 13 shows an example configuration of an information processing system 100 according to a third embodiment. The external database 3 includes an external information storage unit 301 and partial external information storage units (a first partial external information storage unit 302, a second partial external information storage unit 303, etc.) that store partial external information. Partial external information is a portion of the external information. Specifically, the first partial external information storage unit 302 stores only the first partial external information, which is a portion of the external information stored in the external information storage unit 301. The second partial external information storage unit 303 stores only the second partial external information, which is a portion of the external information stored in the external information storage unit 301. Here, the first partial external information and the second partial external information are different from each other.
[0071] In this embodiment, external information is classified into categories. These categories are predetermined, for example, according to anticipated questions or according to the content of the external information. For example, the server-side user support control unit 201 classifies the external information stored in the external information storage unit 301 into categories. The server-side user support control unit 201 generates partial external information consisting only of external information belonging to each classified category, and stores the generated partial external information in the external database 3. For example, the server-side user support control unit 201 stores the first partial external information, which is external information belonging to the first category, in the first partial external information storage unit 302. It stores the second partial external information, which is external information belonging to the second category, in the second partial external information storage unit 303.
[0072] Furthermore, in this embodiment, similar to the second embodiment, the notebook PC 1 is equipped with a category identification unit 103. The category identification unit 103 identifies the question category. The method by which the category identification unit 103 identifies the question category is the same as the method used in the second embodiment. In this embodiment, the notebook PC 1 may or may not be equipped with a status information acquisition unit 102. The information processing system 100 then generates a prompt requesting the system to generate an answer by referring to partial external information consisting only of external information belonging to the same category as the question category. This helps to prevent the extraction of unexpected documents that have a similar vector similarity but are not highly relevant to the question.
[0073] Figure 14 (Figures 14A and 14B) is a sequence diagram showing an example of the operation of the notebook PC 1 according to the third embodiment. Steps S300 to S308 in Figure 14A are the same as the processes shown in steps S200 to S201 and S203 to S209 in Figure 12A, so their explanation is omitted. Similarly, steps S309 to S310 and S313 to S318 in Figure 14B are the same as the processes shown in steps S210 to S211 and S212 to S219 in Figure 12B, so their explanation is omitted. In step S311 of Figure 14B, the client-side user support control unit 101 of the notebook PC 1 sends a request for an answer to the server 2, which includes information indicating the question category in addition to the question information. In step S312 of Figure 14B, Server 2 receives a response request from Notebook PC 1. Server 2's server-side user support control unit 201 generates a prompt. Based on the response request information received from Notebook PC 1, Server 201 generates a prompt requesting the user to refer to a partial external information storage unit consisting only of external information of the same category as the question category and provide an answer.
[0074] In addition, in the sequence described above, as in the second embodiment, it may be found that, as a result of identifying the question category based on the pre-answer, the question belongs to a category that does not require referencing partial external information. In this case, as in the second embodiment, no request for a final answer is made, and the pre-answer is displayed on the chat screen as the answer presented to the user. Specifically, in the information processing system 100 of this embodiment, in step S300, if the external information contains information that is not directly related to the status of the notebook PC 1, such as the telephone number of the support center, the server-side user support control unit 201 classifies the information as "uncategorized" and stores it in the external information storage unit 301. In step S310, if the category of the external information referenced for generating the pre-answer is "uncategorized," the process shown in step S311 is not executed. As a result, the information processing system 100 does not execute the processes shown in steps S312 to S317. The client-side user support control unit 101 of the notebook PC 1 displays the pre-answer on the display unit 14 (step S318).
[0075] As described above, the information processing system 100 according to the third embodiment comprises an external database 3, a client-side user support control unit 101, a server-side user support control unit 201, and a category identification unit 103. The external database 3 stores external information, which is information relating to the object of the question. The state information acquisition unit 102 classifies the information contained in the external information into categories equivalent to the question category. The server-side user support control unit 201 stores each of the partial external information, consisting only of external information belonging to each category, in the external database 3. The category identification unit 103 identifies the question category. The client-side user support control unit 101 outputs the question information and information indicating the question category to the server-side user support control unit 201. The server-side user support control unit 201 requests the language model to generate an answer to the question by referring to the partial external information classified into the question category identified by the category identification unit 103, based on the question information. The server-side user support control unit 201 acquires the answer generated in response to the request. As a result, in the third embodiment, the information processing system 100 can generate answers by referencing only external information classified in the same category as the question category, without referencing external information classified in a different category from the question category. Therefore, in the RAG search process, it is possible to suppress situations in which unexpected external information with similar vector similarity but low relevance to the question is extracted, and accurate answers to user questions can be generated.
[0076] Furthermore, in the information processing system 100 of the third embodiment, the server-side user support control unit 201, upon receiving notification of question information, requests the language model to generate a preliminary answer to the question by referring to external information based on the question information, and acquires the preliminary answer generated in response to the request along with the external information referred to in the generation of the preliminary answer. The category identification unit 103 identifies the question category based on the category associated with the external information referred to in the generation of the preliminary answer. As a result, the information processing system 100 of the third embodiment can easily identify the question category.
[0077] (Fourth embodiment) Next, a fourth embodiment will be described. In the following, the configurations that differ mainly from the first to third embodiments will be described, and the same reference numerals will be used for configurations that are the same as those in the first to third embodiments, and their descriptions will be omitted.
[0078] This embodiment differs from the first embodiment in that it prevents the object being questioned from accessing some external information depending on its environment.
[0079] The environment of the object being questioned here refers to the state in which the object is equipped with or not equipped with any accessories. If the object being questioned is Notebook PC1, the accessories are those whose contents vary depending on the model, for example, application programs (apps) whose contents vary depending on the model. Furthermore, additional features may include various optical disc drives with different configurations depending on the model, support for LTE (Long Term Evolution) communication, and whether or not Wi-Fi (registered trademark) support is available.
[0080] As described in the first embodiment, RAG improves the accuracy of responses by referencing external information. However, depending on the environment of the object being questioned, it may be desirable to exclude some of the external information from being referenced. For example, suppose a support application is provided to answer user questions for each of several computer models, and there are two users (User A and User B) who use this support application. User A's computer PA has both application APa and application APb installed. On the other hand, User B's computer PB has only application APb installed and not application APa. In this case, it is acceptable to include information on how to use apps APa and APb in the answer to user A's question. However, including information on how to use app APa in the answer to user B's question is inappropriate because it could lead user B to mistakenly believe that app APa is installed on the PC PB. Therefore, when generating an answer to user B's question, it is desirable to avoid including information about app APa in the answer. However, with typical RAG (Random Aggregation) mechanisms, it is difficult to request that responses be generated while excluding certain specific pieces of external information. Therefore, it is difficult to intentionally change the external information referenced in response generation depending on the environment of the question. As a countermeasure, in this embodiment, depending on the environment of the object being questioned, some external information is prevented from being referenced.
[0081] Figure 15 shows an example configuration of the information processing system 100 according to the fourth embodiment. The external database 3 has an external information storage unit 301 and a partially excluded external information storage unit (a first partially excluded external information storage unit 311, a second partially excluded external information storage unit 312, etc.). Partially excluded external information is information from which some of the external information has been excluded. Specifically, the first partially excluded external information storage unit 311 stores information from which a portion of the external information stored in the external information storage unit 301, specifically the first partially excluded external information, has been excluded. The second partially excluded external information storage unit 312 stores information from which a portion of the external information stored in the external information storage unit 301, specifically the second partially excluded external information, has been excluded. Here, the first partially excluded external information and the second partially excluded external information are different pieces of information from each other.
[0082] In this embodiment, similar to the third embodiment, external information is classified by category. These categories are pre-set, for example, according to the environment of each model. For example, if some notebook PC models have the application APa installed and others do not, the server-side user support control unit 201 classifies the external information based on whether or not it is related to the application APa. Furthermore, if the presence or absence of an optical disc drive differs depending on the model of the notebook PC 1, the server-side user support control unit 201 classifies the external information based on whether or not it is related to the optical disc drive. Furthermore, if the presence or absence of LTE communication support differs depending on the model of the notebook PC 1, the server-side user support control unit 201 classifies the external information based on whether or not it is related to LTE communication. Furthermore, if the presence or absence of Wi-Fi® support differs depending on the model of the notebook PC 1, the server-side user support control unit 201 classifies the external information based on whether or not it is related to Wi-Fi®. The server-side user support control unit 201 generates partially excluded external information for each classified category by excluding external information belonging to that category, and stores the generated partially excluded external information in the external database 3. For example, the user support control unit 201 stores the first partially excluded external information, which is external information related to the application APa, in the first partially excluded external information storage unit 311. It also stores the second partially excluded external information, which is external information related to the optical disc drive, in the second partially excluded external information storage unit 312.
[0083] Figure 16 is a block diagram showing an example of the functional configuration of a notebook PC according to the fourth embodiment. In this embodiment, the notebook PC 1 includes an environmental information acquisition unit 104 and an environmental information storage unit 402. The environmental information acquisition unit 104 acquires environmental information indicating whether or not the object being questioned has any accessories (such as the application APa) installed. The environmental information acquisition unit 104 acquires the environment of notebook PC 1 by referring to the registry where the environment of notebook PC 1 is stored. For example, if the OS of notebook PC 1 is Windows (registered trademark), a list of applications installed on notebook PC 1 can be checked on a settings screen such as "Add or Remove Programs" or "Installed Apps". Notebook PC 1 stores a list of applications displayed on such settings screens in a specific register. The environmental information acquisition unit 104 acquires the environment of the object being questioned by referring to this register. Alternatively, the environmental information acquisition unit 104 may identify the model of the notebook PC 1 from its model name and acquire the environment of the notebook PC 1 according to the identified model. In this case, the environmental information acquisition unit 104 acquires the model name of the notebook PC 1 stored in a specific register on the notebook PC 1 and identifies the model by referring to a correspondence table that associates the model name with the corresponding model. The correspondence table may be stored in the notebook PC 1 beforehand, or it may be stored on an external device (for example, server 2) via a communication network such as the Internet. The environmental information acquisition unit 104 stores the acquired environmental information indicating the environment of the notebook PC 1 in the environmental information storage unit 402. The environmental information storage unit 402 stores environmental information.
[0084] Figure 17 (Figures 17A and 17B) is a sequence diagram showing an example of the operation of the notebook PC 1 according to the fourth embodiment. Steps S401 to S408 in Figure 17A are the same as the processes shown in steps S301 to S308 in Figure 14A, so their explanation is omitted. Similarly, steps S409, S413, and S415 to S418 in Figure 17B are the same as the processes shown in steps S309, S313, and S315 to S318 in Figure 14B, so their explanation is omitted. In step S400 of Figure 17A, the server-side user support control unit 201 of server 2 classifies external information into categories (according to the environment) and generates partially excluded external information by excluding external information belonging to a specific category from all external information. The server-side user support control unit 201 registers the external information storage unit 301, which stores all external information, and the partially excluded external information storage units (first partially excluded external information storage unit 311, second partially excluded external information storage unit 312, etc.) that store the partially excluded external information, in the external database 3.
[0085] In step S410 of Figure 17B, the client-side user support control unit 101 of the notebook PC 1 determines whether the information used for the pre-response includes external information that is not present in the notebook PC 1's environment. The environment information acquisition unit 104 acquires the environment information and stores the acquired environment information in the environment information storage unit 402. The client-side user support control unit 101 reads the environment information of the notebook PC 1 from the environment information storage unit 402. By comparing the read environment information with the information referenced in the pre-response, the client-side user support control unit 101 determines whether the information used for the pre-response includes information about ancillary items (such as the application APa) that are not present in the notebook PC 1's environment. Note that the environment information acquisition unit 104 may acquire the environment information in step S410, or it may acquire the environment information at any time beforehand (such as at startup). Here, when the notebook PC 1 requests a preliminary response from the server 2 in step S402, it may also send the environment information stored in the environment information storage unit to the server 2. In this case, when the client-side user support control unit 101 of the notebook PC 1 receives a question from the user in step S401, it reads and obtains the environment information of the notebook PC 1 from the environment information storage unit 402 in step S402. Then, the client-side user support control unit 101 sends a response request to the server 2, with information indicating ancillary items (such as the application APa) that are not present in the environment of the notebook PC 1 added to the question information, similar to step S411 described later. By using this processing flow, the processing shown in steps S403 to S410 can be omitted.
[0086] In step S411 of Figure 17B, the client-side user support control unit 101 of the notebook PC 1 sends a request for an answer to the server 2, with information indicating ancillary items (such as the application APa) that are not present in the notebook PC 1's environment added to the question information. In step S412 of Figure 17B, Server 2 receives a response request from Notebook PC 1. Server 2's server-side user support control unit 201 generates a prompt. In response to the response request, Server 2's server-side user support control unit 201 generates a prompt requesting that the user refer to external information (corresponding partially excluded external information) that excludes information about ancillary items (such as the application APa) that are not present in Notebook PC 1's environment. In step S414 of Figure 17B, the language model server 4 retrieves information related to the question in the prompt from the corresponding partially excluded external information, based on the prompt received from server 2.
[0087] In the sequence described above, the information referenced in the preliminary response may not include information that is not present in the environment of Notebook PC 1. In this case, a request for a formal response will not be made, and the preliminary response will be displayed on the chat screen as the answer presented to the user. Specifically, in the information processing system 100 of this embodiment, if the external information referenced in step S410 for generating the pre-answer does not include information about ancillary items (such as the application APa) that are not present in the environment of the notebook PC 1, the process shown in step S411 is not executed. As a result, the information processing system 100 does not execute the processes shown in steps S412 to S417. The client-side user support control unit 101 of the notebook PC 1 displays the pre-answer on the display unit 14 (step S418).
[0088] As described above, the information processing system 100 according to the fourth embodiment comprises an external database 3, a client-side user support control unit 101, a server-side user support control unit 201, and an environment information storage unit 402. The external database 3 stores external information, which is information about the object being questioned. The server-side user support control unit 201 generates partially excluded information by excluding information about each accessory (such as an application APa) that is installed or not installed on the object being questioned from the external information. The server-side user support control unit 201 stores each of the generated partially excluded external information in the external database 3. The environment information storage unit 402 stores environment information indicating whether or not an accessory is installed on the object being questioned. The client-side user support control unit 101 outputs question information and information indicating the question category to the server-side user support control unit 201. The server-side user support control unit 201 requests the language model to generate an answer to the question by referring to the partially excluded external information, which does not include unnecessary information, which is information about accessories not installed on the object being questioned, based on the question information. The server-side user support control unit 201 retrieves the response generated in response to the request. As a result, in the information processing system 100 of the fourth embodiment, if a specific accessory (such as the application APa) is not installed on the notebook PC 1 which is the subject of the question, it is possible to generate a response that does not include information about that accessory, thereby enabling the generation of an accurate response to the user's question.
[0089] Furthermore, in the information processing system 100 of the fourth embodiment, the server-side user support control unit 201 requests the language model to generate a preliminary answer to a question by referring to external information (not partially excluded external information) based on the question information, and obtains the external information referred in the generation of the preliminary answer along with the preliminary answer generated in response to the request. The client-side user support control unit 101 determines whether or not the external information referred in the generation of the preliminary answer contains unnecessary information. If unnecessary information is included, the server-side user support control unit 201 requests the language model to generate an answer to the question by referring to partially excluded external information that does not contain unnecessary information, based on the question information. On the other hand, if unnecessary information is not included, the client-side user support control unit 101 uses the preliminary answer as the answer to the user who asked the question. Thus, in the information processing system 100 of the fourth embodiment, the user can obtain an accurate answer by generating the final answer when the external information referred in the preliminary answer contains unnecessary information. In addition, the processing load can be suppressed by not generating the final answer when the external information referred in the preliminary answer does not contain unnecessary information.
[0090] It should be noted that the present invention is not limited to the embodiments described above, and can be modified without departing from the spirit of the invention. For example, in the above embodiment, an example was described in which the information processing device is a notebook PC (notebook PC 1), but it is not limited to this, and other information processing devices such as a desktop PC or a tablet terminal device may also be used.
[0091] Furthermore, although the above embodiment describes an example in which the client-side user support control unit 101 displays the support application on the display unit 14, the invention is not limited to this, and the application may be displayed on other display devices.
[0092] Furthermore, although several embodiments have been described above, some configurations in one embodiment may be provided as configurations in other embodiments. For example, in the third embodiment, the state information acquisition unit 102 in the first embodiment may be provided, and response request information may be generated in which state information is added to the question information in addition to partial external information. This makes it possible to improve the accuracy of the response by referring to the partial external information, and to generate a response that takes into account the state of the notebook PC 1 by adding state information to the response request information, thereby further improving the accuracy of the response.
[0093] Furthermore, each component of the Notebook PC 1 described above has a computer system inside. The processing in each component of the Notebook PC 1 may be performed by recording a program for realizing the functions of each component on a computer-readable storage medium, loading the program recorded on this storage medium into the computer system, and executing it. Here, "loading the program recorded on the storage medium into the computer system and executing it" includes installing the program into the computer system. Here, "computer system" includes hardware such as the operating system and peripheral devices.
[0094] Furthermore, "computer system" may include multiple computer devices connected via a network, including communication lines such as the Internet, WAN, LAN, and dedicated lines. "Computer-readable recording medium" refers to portable media such as flexible disks, magneto-optical disks, ROMs, and CD-ROMs, as well as storage devices such as hard disks built into computer systems. Thus, the recording medium storing the program may be a non-transient recording medium such as a CD-ROM.
[0095] Furthermore, the recording medium includes internal or external recording media accessible from the distribution server for distributing the program. The program may be divided into multiple parts, downloaded at different times, and then combined in each configuration of Notebook PC1, and each divided program may be distributed by a different distribution server. Additionally, "computer-readable recording medium" includes volatile memory (RAM) within computer systems that act as servers or clients when a program is transmitted over a network, which retains the program for a certain period of time. Moreover, the program may be intended to implement only a portion of the functions described above. Furthermore, the program may be a so-called differential file (differential program) that can implement the functions described above in combination with a program already recorded in the computer system.
[0096] Furthermore, some or all of the above-mentioned functions may be implemented as integrated circuits such as LSIs (Large Scale Integrations). Each of the above-mentioned functions may be implemented as an individual processor, or some or all of them may be integrated into a single processor. In addition, the method of implementing integrated circuits is not limited to LSIs; they may also be implemented using dedicated circuits or general-purpose processors. Furthermore, if advances in semiconductor technology lead to the emergence of integrated circuit technologies that can replace LSIs, integrated circuits using such technologies may be used. [Explanation of symbols]
[0097] 1. Laptop 2 servers 3. External Databases 4. Language Model Server 10 Main Control Unit 11 CPU 12 Main Memory 13 Video Subsystems 14 Display section 21 Chipset 22 BIOS memory 23 HDD 24 Audio Systems 25 Communications Department 26 USB connectors 27 Imaging Unit 31. Embedded Controller (EC) 32 Input section 33 Power supply circuit 40 Storage section 101 Client-side User Support Control Unit (User Support Control Unit) 102 Status Information Acquisition Unit 103 Category Identification Section 104 Environmental Information Acquisition Department 201 Server-side User Support Control Unit (User Support Control Unit) 401 State Information Storage Unit 402 Environmental information storage section
Claims
1. A status information acquisition unit acquires status information indicating the state of the object in question in response to the notification of question information, which is a question from a user regarding the object in question. A category identification unit that identifies the question category, which is the category of the aforementioned question, A user support control unit selects state information from the state information acquired by the state information acquisition unit that is classified into the question category identified by the category identification unit, generates response request information by adding the selected state information to the question information, requests the language model to generate an answer to the question using the response request information, and acquires the answer generated in response to the request. An information processing system equipped with the following features.
2. The system further includes an external database that stores external information, which is information relating to the subject of the aforementioned question. The user support control unit is The external information is classified into categories equivalent to the aforementioned question categories, and the information relating the classified classification results to the external information is stored in the external database. Upon obtaining the aforementioned question information, the language model is requested to generate a preliminary answer to the question by referencing the external information based on the question information, and the external information referenced in the generation of the preliminary answer is obtained along with the preliminary answer generated in response to the request. The category identification unit identifies the question category based on the category associated with the external information referenced in the generation of the pre-response. The information processing system according to claim 1.
3. An information processing device having the status information acquisition unit, the category identification unit, and the client-side user support control unit that generates the response request information, A server having a server-side user support control unit that is communicatively connected to the information processing device, requests a language model to generate an answer to the question using the answer request information, and retrieves the answer generated in response to the request, The information processing system according to claim 1, comprising:
4. An information processing apparatus having the status information acquisition unit, the category identification unit, and the user support control unit, The information processing system according to claim 1, comprising:
5. An information processing method performed by a computer applied to an information processing system, The status information acquisition unit acquires status information indicating the state of the object in question in response to the notification of question information, which is a question from a user regarding the object in question. The category identification unit performs the step of identifying the question category which is the category of the question, The user support control unit selects the state information from the state information acquired by the state information acquisition unit that is classified into the question category identified by the category identification unit, generates response request information by adding the selected state information to the question information, requests the language model to generate an answer to the question using the response request information, and obtains the answer generated in response to the request. A control method including
Citation Information
Patent Citations
server
JP2023162940A
Cited By
Prompt creation system
JP7898212B1