Evaluation device, evaluation system, and program

The evaluation device automates testing of recommendation systems by using an evaluation LLM to assess answer correctness, addressing challenges in frequent testing due to document and system updates, ensuring accurate and efficient system updates.

WO2026009381A1PCT designated stage Publication Date: 2026-01-08NT T INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2024/024281
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-07-04
Publication Date
2026-01-08

AI Technical Summary

Technical Problem

Existing tools like Jenkins struggle to automate testing of recommendation systems that generate answers from questions, particularly due to the difficulty in programmatically describing criteria that output text must satisfy, making frequent testing challenging for systems with changing document databases and LLM updates.

Method used

An evaluation device and system that utilize an evaluation LLM to determine whether answers generated by a recommendation system satisfy predefined correct answer conditions, through an input interface, answer acquisition, evaluation, and output of results.

Benefits of technology

Enables automated testing of recommendation systems, ensuring accurate and efficient updates by verifying that answers meet specified criteria, reducing risks associated with document and system changes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2024024281_08012026_PF_FP_ABST
    Figure JP2024024281_08012026_PF_FP_ABST
Patent Text Reader

Abstract

This evaluation device is for evaluating a system that outputs an answer to a question, and comprises: an answer acquisition unit that acquires the answer to the question from the system; and an evaluation unit that inputs a correct answer condition and the answer to a language model, and thereby acquires, from the language model, a determination result indicating whether the answer satisfies the correct answer condition.
Need to check novelty before this filing date? Find Prior Art

Description

Evaluation device, evaluation system, and program

[0001] The present invention relates to techniques for testing recommender systems.

[0002] Even today, with the rise of digital transformation, various business processes have become more efficient, but many of today's business processes in companies are still based on human execution and judgment. IT systems are composed of a complex interrelationship between various components on both the software and hardware sides. For this reason, no matter how much digital transformation is promoted, it is rare for all IT system operations to be automated, and the reality is that infrequently performed operations are still performed manually.

[0003] Since it is difficult to automate all tasks and manual work still remains, in recent years, there has been growing expectation for recommendation systems that use large language models (LLMs) to help workers work more efficiently.

[0004] LLMs are machine learning models typically consisting of hundreds of billions of parameters, and generate appropriate answers to input text based on a large amount of training data. LLMs achieve extremely high response accuracy and flexible input and output of text and images. They became explosively popular, starting with the emergence of GPT, the LLM that makes up the chatGPT service. Accordingly, various companies are introducing recommendation systems that accept questions from users, such as employees and customers, and have LLMs generate the desired answers.

[0005] Recommendation systems using LLMs are often implemented using a method called Retrieval Augmented Generation (RAG), which combines them with document search. LLMs generate answers based on general knowledge available on the Internet, and therefore do not have knowledge of the company's internal business processes. In contrast, RAG first searches for documents related to the question from a business document database so that the LLM can generate answers based on specific knowledge of the company's business processes.

[0006] This search step is often achieved by calculating the document similarity between the given question and the documents contained in the document database using some kind of formula, and then selecting the document with the highest similarity. Then, a prompt is created that combines the obtained document with the original question, and this is given to the LLM to generate an answer.

[0007] In RAG, the prompt includes not only the question but also the acquired documents, allowing the LLM to generate answers that take into account the company's specific knowledge.

[0008] In general IT systems, including recommendation systems, testing is performed during system construction or when any updates are made to verify that the IT system meets requirements. In particular, for IT systems with components whose internal processing is unclear, such as recommendation systems with LLMs, testing is typically performed to verify whether the output from specified input values ​​is the expected value. This type of testing is called black box testing. Because black box testing is performed on the various functions that make up an IT system, the number of test items can be enormous. For this reason, various tools for automating black box testing have become available in recent years. For example, Jenkins (non-patent document 1), an open-source software deployment automation tool, automatically runs a predefined list of tests in addition to building source code and determines whether the target software passes all tests.

[0009] Jenkins User Documentation, https: / / www.jenkins.io / doc / , accessed 2024 / 05 / 09.

[0010] Because recommendation systems provide answers in text, automating testing to verify that the system is operating correctly is difficult. If black-box testing is applied to recommendation systems, both the input and output of each test item will be text. While it is easy to provide input to a recommendation system, it is not easy to programmatically describe the criteria that the output text must satisfy. Therefore, it is difficult to automate testing of recommendation systems using existing tools such as Jenkins. Note that these challenges for recommendation systems are not limited to recommendation systems, but can arise in any system that generates answers from questions.

[0011] The present invention has been made in view of the above points, and has as its object to provide a technique that enables automatic testing of a system that generates answers from questions.

[0012] According to the disclosed technology, there is provided an evaluation device for evaluating a system that outputs an answer to a question, comprising: an answer acquisition unit that acquires the answer to the question from the system; and an evaluation unit that inputs a correct answer condition and the answer into a language model and thereby acquires, from the language model, a determination result indicating whether the answer satisfies the correct answer condition.

[0013] The disclosed technology provides a technology that enables automated testing of a system that generates answers from questions.

[0014] It is a diagram showing an example of the configuration of an evaluation system in an embodiment of the present invention. It is a flowchart for explaining the operation of the evaluation device 100. It is a diagram showing an example of information exchanged between functional units in the evaluation device 100. It is a diagram showing an example of output. It is a diagram showing an example of the hardware configuration of the device.

[0015] Hereinafter, an embodiment of the present invention will be described with reference to the drawings. The embodiment described below is merely an example, and the embodiment to which the present invention is applied is not limited to the following embodiment.

[0016] Hereinafter, the technology according to this embodiment relates to the development and operation of a recommendation system that presents relevant information in response to a user query, and is a technology that automatically evaluates whether the recommendation system is returning an appropriate response.

[0017] In this embodiment, the "LLM" used in the "LLM for evaluation" and the like is an example of a "language model." In this embodiment, a language model that is not called an LLM may be used instead of the "LLM."

[0018] Furthermore, in this embodiment, the evaluation target is a "recommendation system," but the technology according to the present invention can also be applied to systems other than a "recommendation system" (systems that provide answers to questions).

[0019] In the following, the problem will be described in more detail first, and then the technology according to the present embodiment will be described. In the following description of the problem, the technology itself disclosed in the document is publicly known, but the description of the problem is not publicly known.

[0020] (Challenges) As mentioned above, it is difficult to automate testing of recommendation systems using existing tools such as Jenkins.

[0021] While automation is difficult, recommendation systems are systems that are updated frequently, so tests must be conducted frequently. Because the answer results of recommendation systems change daily due to various factors, there is a risk that past tests may no longer satisfy the conditions. Specifically, the answer results of recommendation systems change due to the following two factors (1) and (2).

[0022] (1) Document updates: New information is added and edited daily by the business flow manager in the document database due to changes in business operations, consideration of measures to prevent recurrence after a problem occurs, etc. When the database is updated, the documents retrieved by searches may change, or the contents of the documents may be modified, which may result in answers that differ from those generated the day before.

[0023] (2) Recommender system updates: New versions of the LLMs that make up the recommender system are released frequently. The search and generation mechanisms of the recommender system are updated irregularly. To maintain the performance of the recommender system, developers must test it frequently.

[0024] In other words, it can be said that recommendation systems are systems for which automated testing is highly required.

[0025] In order to solve the above problem, this embodiment realizes automation of black-box testing in a recommendation system using LLM, thereby enabling safe updates of the recommendation system using LLM.

[0026] (Device Configuration Example) Fig. 1 shows a configuration example of an evaluation system in this embodiment. As shown in Fig. 1, this evaluation system includes an evaluation device 100 and a recommendation system 200. The evaluation device 100 and the recommendation system 200 are connected via a network. The recommendation system 200 is a recommendation system using the LLM described above.

[0027] The evaluation device 100 is a device that aims to solve the problem of the recommendation system 200 that uses LLM, namely, that it is difficult to determine whether the output text satisfies the conditions, by using LLM to determine whether the output text is correct or not.

[0028] 1, the evaluation device 100 includes an input interface 110, a response acquisition unit 120, an evaluation unit 130, an evaluation LLM 140, and an output interface 150. The functions of each unit are as follows.

[0029] The input interface 110 accepts a test item list consisting of one or more test items, each of which is a question and a condition for correct answering the question.

[0030] The answer acquisition unit 120 inputs questions for each test item to the test target recommendation system 200 and obtains answers.

[0031] The evaluation unit 130 automatically determines whether the answer from the recommendation system 200 satisfies the correct answer condition using the evaluation LLM 140, and interprets the result.

[0032] The evaluation LLM 140 determines whether the answer matches the correct answer conditions and outputs the result of the determination. If there is a mismatch, it outputs a problem.

[0033] For each test item, the output interface 150 outputs three things: the answer obtained from the target recommendation system 200 as a result of inputting a question, the result of determining whether the answer satisfies the correct answer conditions, and the questions that did not satisfy the correct answer conditions.

[0034] The evaluation LLM 140 may be provided outside the evaluation device 100. Furthermore, either or both of the input interface 110 and the output interface 150 may be provided outside the evaluation device 100.

[0035] Furthermore, a configuration having the answer acquisition unit 120 and the evaluation unit 130 may be called an evaluation device, and a configuration having the evaluation device and the "input interface 110 and output interface 150" may be called an evaluation system.

[0036] (Processing Flow) The operation of the evaluation device 100 will be described according to the procedure of the flowchart shown in Fig. 2. Here, the processing for one test item will be described.

[0037] <S1 (Step 1): Input> In S1, the user inputs a question to the recommendation system 200 and a correct answer condition that the answer should satisfy as test items from the input interface 110.

[0038] <S2: Obtaining an Answer> In S2, the answer acquisition unit 120 inputs the question of the test item to the recommendation system 200 and obtains an answer from the recommendation system 200.

[0039] <S3: Prompt Creation and Input> In S3, the evaluation unit 130 creates a prompt for evaluation based on the answer from the recommendation system 200 and the correct answer conditions, and inputs the prompt to the evaluation LLM 140.

[0040] <S4: Obtaining Judgment Result and Problems> In S4, the evaluation unit 130 obtains the judgment result and problems output from the evaluation LLM 140.

[0041] <S5: Output> In S5, the output interface 150 outputs the question, answer, correct answer condition, judgment result, and problem as a set.

[0042] The above is the processing flow for one test item. In this embodiment, it is assumed that there are multiple test items in the input. The evaluation device 100 performs the above processing uniformly for all test items.

[0043] FIG. 3 shows an example of information exchanged between the evaluation devices 100 for one test item.

[0044] In the example of Figure 3, the question is "Please tell me what to do when I want to do □□ on device X." The correct answer condition is "Check file 005.csv and see if the device is included in the target list. If it is included in the target list, perform task F. If an error occurs in task F, perform task G."

[0045] The answer is "First, perform F. Then, perform G." The judgment result is "NG." The problems are "- There is a missing step to check file 005.csv and see if the device is included in the target list.- There is a missing condition to perform task G only if an error occurs in task F."

[0046] The questions, correct answer conditions, prompts, etc. will be explained in more detail below.

[0047] (Regarding Questions) The user creates questions for test items by imagining queries that will actually be posed to the recommendation system 200. For example, in the case of a recommendation system that supports the IT system of a certain company, possible questions include (1) "Where and how can I apply to add an email address for a new employee?" and (2) "What do I need to do if I purchase a new PC?"

[0048] (Regarding Correct Answer Conditions) It is assumed that the correct answer conditions for a question are described as a list of conditions that the answer must satisfy, or as example answers, or as a combination of these.

[0049] For example, the correct answer conditions for question (1) above are written as follows: ---Correct answer conditions start here--- The following contents must be included: - An email address must be created from the Information Systems department's website - The department manager in charge must be set as the approver of the application - The email address must be 64 characters or less and include the person's name ---Correct answer conditions end here--- The above are the correct answer conditions.

[0050] An example answer from the recommendation system 200 to question (2) is as follows: --Answer example starts here-- 1. Please apply for the issuance of an IP address by following the PC setup manual in the following folder: ...... / setup.docx 2. Please install the security software using the following procedure: 1....... 2....... --Answer example ends here-- The conditions for a correct answer to question (2) are as follows: --Conditions for a correct answer start here-- -The security software installation procedure must show all procedures for each OS. -After the IP address is issued, instructions are given to install the security software. --Conditions for a correct answer end here-- The above are the conditions for a correct answer to question (2).

[0051] When a set of a question and a correct answer condition is given, the answer acquisition unit 120 gives the question to the recommendation system 200 and obtains an answer. The target recommendation system 200 normally outputs text, but the output may be in another format, for example, a list of related documents when using a general search system.

[0052] (About Prompts) The evaluation unit 130 creates a prompt that combines the answer obtained by the answer acquisition unit 120, the correct answer conditions, and a question. By inputting the prompt into the evaluation LLM 140, the evaluation LLM 140 obtains a judgment result and problems. The prompt is created in a predetermined format so that the evaluation LLM 140 can return the judgment result and problems. An example of the format is shown below. ---Format starts here--- You are the judge who determines whether the LLM's answer is appropriate. You are given a triplet consisting of a question, an answer generated by another LLM, and the correct answer conditions that the answer must satisfy. You must answer whether the answer satisfies the correct answer conditions. The first line of your answer must be either OK or NG. If the answer generated by another LLM satisfies the correct answer conditions, answer OK; if not, answer NG. If the first line is OK, do not answer anything after that. If the first line is NG, list the conditions that were not met in bullet points. ■Question {{Question}} ■Answer {{Answer}} ■Correct condition {{Correct condition}} --- Format ends here --- The evaluation unit 130 embeds text for each test item in the {{Question}}, {{Answer}}, and {{Correct condition}} in the above format and inputs it into the evaluation LLM 140.

[0053] In the above format, the instruction, question, answer, and correct condition are included in one prompt, but this is an example. For example, the instruction, question, answer, and correct condition may be provided separately to the evaluation LLM 140.

[0054] In the above example, the input to the evaluation LLM 140 includes a question, an answer, and a correct answer condition, but the input to the evaluation LLM 140 may include an answer and a correct answer condition without including a question. Note that "including an answer and a correct answer condition" in the input includes the case where the input is only "an answer and a correct answer condition."

[0055] The evaluation LLM 140 used in the evaluation unit 130 is prepared for making a judgment and is different from the LLM that constitutes the recommendation system 200. However, this is not limited to this, and a configuration in which the evaluation LLM 140 and the LLM that constitutes the recommendation system 200 are the same may be adopted.

[0056] The evaluation LLM 140 responds to the prompts with a "judgment result" indicating whether the answer satisfies all of the correct answer conditions, and a "problem" describing the conditions that are not met. In the above example, the OK or NG included in the first line of the answer represents the judgment result, and the remaining sentences, which are written only in the NG case, represent the problem. In other words, the evaluation LLM 140 may output only the "judgment result."

[0057] In the above example, the prompt is created so that problems are displayed only in the case of an NG result, but in reality, problems may also be output in the case of an OK result. For example, even if the judgment result is OK, it is possible to display areas that need improvement, or to list all of the correct answer conditions that were met. Furthermore, instead of OK / NG, the judgment result can be a score that indicates the degree to which the conditions are met. For example, if all correct answer conditions are met, the score is 100, and if none are met, the score is 0, and the degree to which the correct answer conditions are met can be confirmed. This method makes it possible to quantify the accuracy of the target recommendation system.

[0058] (Methods other than prompts) As a method of utilizing the evaluation LLM 140, instead of controlling the output of the evaluation LLM 140 by prompts as described above, it is also possible to realize the operation of the evaluation device 100 described above by using an approach called fine tuning to have the evaluation LLM 140 learn appropriate answers.

[0059] When fine-tuning is used instead of using prompts, a large amount of input data for answers and correct answer conditions (or input data for questions, answers, and correct answer conditions) and pairs of output results for judgments and problems are prepared as a learning dataset.

[0060] Next, by fine tuning, the parameters of the evaluation LLM 140 are adjusted so that the evaluation LLM 140 returns output data (correct output results) when it receives input data. In this case, a large amount of data set needs to be prepared, but there is an advantage in that the output results can be flexibly adjusted to make appropriate judgments.

[0061] (Specific Example Using Multiple Test Items) The evaluation device 100 performs the above-described operation for each of multiple test items, and presents the results to the user via the output interface 150.

[0062] An example of output to the user is shown in Figure 4. In this example, three test items were given, and the judgement result for two of them was NG. The problems are listed as points that did not satisfy the correct answer conditions, such as the referenced file being incorrect, a specific task being omitted, or the execution conditions for a specific task being omitted.

[0063] The content of the output from the output interface 150 is not limited to that shown in Fig. 4. For example, the output interface 150 may output only the answer and the determination result, or may output only the determination result.

[0064] (Hardware Configuration Example) Any of the devices described in this embodiment (e.g., the evaluation device 100, the evaluation system, and the recommendation system 200) can be realized by, for example, causing a computer to execute a program. This computer may be a physical computer or a virtual machine on the cloud.

[0065] That is, the device can be realized by executing a program corresponding to the processing performed by the device using hardware resources such as a CPU and memory built into a computer. The program can be recorded on a computer-readable recording medium (such as a portable memory) and stored or distributed. The program can also be provided via a network such as the Internet or email.

[0066] Fig. 5 is a diagram showing an example of the hardware configuration of the computer. The computer in Fig. 5 includes a drive device 1000, an auxiliary storage device 1002, a memory device 1003, a CPU 1004, an interface device 1005, a display device 1006, an input device 1007, an output device 1008, and the like, all of which are interconnected via a bus B. The computer may further include a GPU.

[0067] The program that realizes the processing on the computer is provided by a recording medium 1001, such as a CD-ROM or a memory card. When the recording medium 1001 storing the program is set in the drive device 1000, the program is installed from the recording medium 1001 to the auxiliary storage device 1002 via the drive device 1000. However, the program does not necessarily have to be installed from the recording medium 1001, but may be downloaded from another computer via a network. The auxiliary storage device 1002 stores the installed program as well as necessary files, data, etc.

[0068] The memory device 1003 reads and stores a program from the auxiliary storage device 1002 when an instruction to start the program is received. The CPU 1004 realizes functions related to the device in accordance with the program stored in the memory device 1003. The interface device 1005 is used as an interface for connecting to a network, etc. The display device 1006 displays a GUI (Graphical User Interface) or the like according to the program. The input device 1007 is composed of a keyboard, mouse, buttons, a touch panel, etc., and is used to input various operation instructions. The output device 1008 outputs the results of calculations.

[0069] (Summary, Effects, etc. of the Embodiment) As described above, the evaluation device 100 according to the present embodiment includes the input interface 110, the answer acquisition unit 120, the evaluation LLM 140, the evaluation unit 130, and the output interface 150.

[0070] The input interface 110 is an interface through which the user inputs a list of "questions to the recommendation system 200 and correctness conditions that the answers from the recommendation system 200 must satisfy." The answer acquisition unit 120 automatically inputs all questions to the recommendation system 200 and obtains answers. The evaluation LLM 140 accepts the questions, answers, and correctness conditions, and determines whether the answers satisfy the correctness conditions. The output interface 150 is an interface that presents the answers, determination results, and problems to the user. The evaluation device 100 according to this embodiment provides the following effects.

[0071] As described above, the recommendation system 200 may generate answers that differ from conventional answers due to either an update of the reference document or an update of the recommendation system 200. By using the technology according to this embodiment, the administrator of the recommendation system 200 can appropriately determine whether or not to implement these updates.

[0072] Reference documents are updated when there are changes in the business or when there are deficiencies in the manual. Without the technology according to this embodiment, the administrator would have no way to check whether the changes in the manual have been correctly reflected in the recommendation system 200, and there is a risk that the changes will not be properly communicated to users. There is also a risk that information that has been correctly recommended up until now will no longer be able to be recommended due to changes in the manual.

[0073] To address such problems, by using the technology according to this embodiment, it is possible to confirm that information is correctly recommended to users of the recommendation system 200. Furthermore, by registering all pairs of questions and correct answer conditions in a list, it is possible to detect in advance the problem that a question that was previously answered can no longer be answered appropriately due to an update to the manual.

[0074] When updating the recommendation system 200, if questions and their correct answer conditions are listed, the administrator of the recommendation system 200 can efficiently evaluate the performance after the update using the technology according to this embodiment. By asking questions to the recommendation system 200 updated using the technology according to this embodiment and tallying up the number of items for which answers satisfy the correct answer conditions, it is possible to check how accurately the recommendation system 200 can provide answers before and after the update. This allows the administrator of the recommendation system 200 to appropriately determine whether it is appropriate to perform an update.

[0075] In other words, by using the technology according to this embodiment, the administrator of the recommendation system 200 can guarantee that the recommendation system 200 always operates in a state that meets the target performance requirements, which makes it much easier to introduce and utilize the recommendation system 200.

[0076] The following additional notes are provided regarding the above-described embodiments.

[0077] <Additional Notes> (Additional Item 1) An evaluation device for evaluating a system that outputs an answer to a question, comprising: an answer acquisition unit that acquires the answer to the question from the system; and an evaluation unit that inputs a correct answer condition and the answer into a language model and thereby acquires from the language model a determination result indicating whether the answer satisfies the correct answer condition. (Additional Item 2) The evaluation device according to Additional Item 1, wherein the evaluation unit acquires problems with the answer in addition to the determination result from the language model. (Additional Item 3) The evaluation device according to Additional Item 1, wherein the evaluation unit inputs a prompt including an instruction sentence, the correct answer condition, and the answer into the language model and thereby acquires the determination result from the language model. (Additional Item 4) The evaluation device according to Additional Item 1, wherein the system is a recommendation system that generates the answer to the question using a language model and document search. (Supplementary Item 5) An evaluation system comprising the evaluation device according to any one of Supplementary Items 1 to 4, an input interface for receiving the question and the correct answer condition, and an output interface for outputting the judgment result. (Supplementary Item 6) A non-transitory storage medium storing a program for causing a computer to function as each unit in the evaluation device according to any one of Supplementary Items 1 to 4.

[0078] Although the present embodiment has been described above, the present invention is not limited to such a specific embodiment, and various modifications and changes are possible within the scope of the gist of the present invention described in the claims.

[0079] 100 Evaluation device 110 Input interface 120 Answer acquisition unit 130 Evaluation unit 140 Evaluation LLM 150 Output interface 200 Recommendation system 1000 Drive device 1001 Recording medium 1002 Auxiliary storage device 1003 Memory device 1004 CPU 1005 Interface device 1006 Display device 1007 Input device 1008 Output device

Claims

1. An evaluation device for evaluating a system that outputs an answer to a question, comprising: an answer acquisition unit that acquires the answer to the question from the system; and an evaluation unit that inputs a correct answer condition and the answer into a language model and acquires, from the language model, a determination result indicating whether the answer satisfies the correct answer condition.

2. The evaluation device according to claim 1, wherein the evaluation unit acquires, from the language model, problems in the answer in addition to the judgment result.

3. The evaluation device according to claim 1, wherein the evaluation unit obtains the judgment result from the language model by inputting a prompt including an instruction sentence, the correct answer condition, and the answer into the language model.

4. The evaluation device according to claim 1, wherein the system is a recommendation system that generates the answer to the question using a language model and document search.

5. An evaluation system comprising the evaluation device according to any one of claims 1 to 4, an input interface for receiving the question and the correct answer condition, and an output interface for outputting the judgment result.

6. A program for causing a computer to function as each unit in the evaluation device according to any one of claims 1 to 4.