Information processing device, information processing method, and information processing program

A static script generation system for LLMs addresses inefficiencies in LLM-based information extraction by reducing repeated calls and improving accuracy, enabling efficient and reproducible information retrieval from varied file data.

WO2025215781A1PCT designated stage Publication Date: 2025-10-16TEKTOME INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2024/014619
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-04-11
Publication Date
2025-10-16

AI Technical Summary

Technical Problem

Existing large-scale language models (LLMs) require repeated calls for information extraction, leading to inefficiencies in time, cost, and inconsistent extraction accuracy when processing file data groups.

Method used

A system that generates a static script using a trained language model (LLM) to extract desired information from file data, reducing the need for repeated calls and enhancing extraction accuracy through script correction and evaluation.

Benefits of technology

The system reduces time and cost while ensuring reproducible and accurate extraction of information from diverse file formats, allowing non-experts to create effective scripts.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2024014619_16102025_PF_FP_ABST
    Figure JP2024014619_16102025_PF_FP_ABST
Patent Text Reader

Abstract

[Problem] To address the problem that time and cost are required since an LLM is called every time information collection processing is performed in a conventional technology. [Solution] In order to address the problem, provided is an information processing device comprising: a prompt setting unit for setting a prompt for designating desired information that is information pertaining to a desired item from a plurality of pieces of file data including a plurality of target items; a sample setting unit for setting sample file data to be input to a trained language model together with the set prompt; a script generation unit for inputting the set prompt and the set sample file data to the trained language model and generating a script for acquiring the designated desired information; and a desired information acquisition unit for acquiring the designated desired information from the target file data by means of the generated script.
Need to check novelty before this filing date? Find Prior Art

Description

Information processing device, information processing method, and information processing program

[0001] The present invention relates to an information processing apparatus for acquiring desired information from a file data group containing various information.

[0002] In recent years, the use of large-scale language models (LLMs, hereinafter sometimes abbreviated as LLMs) to acquire predetermined information from file data groups has become widespread. For example, Patent Literature 1 discloses a technology that uses LLMs to collect character information related to predetermined items from a variety of printed materials with no fixed format, such as advertising flyers.

[0003] Patent No. 7430437

[0004] The technology of Patent Document 1 provides the LLM with prompts including instructions for specifying the items to be collected and other instructions related to the collection, thereby collecting one or more pieces of character information related to one or more predetermined items from a group of character strings printed on a flyer read by OCR. This technology calls the LLM every time information collection is performed, which results in problems of time and cost. Furthermore, calling the LLM every time information collection is performed results in problems of inconsistent extraction accuracy.

[0005] Therefore, in order to solve the above-mentioned problems, the present invention provides the following information processing device etc. That is, the information processing device includes a prompt setting unit that sets a prompt for specifying desired information, which is information related to a desired item, from a plurality of file data including a plurality of target items, a sample setting unit that sets sample file data to be input to a trained language model together with the set prompt, a script generation unit that inputs the set prompt and the set sample file data to the trained language model and generates a script for acquiring the specified desired information, and a desired information acquisition unit that acquires the specified desired information from the target file data using the generated script.

[0006] In addition to the above features, the present invention provides an information processing device further comprising a script storage unit for storing the generated script.

[0007] In addition to the above features, the present invention provides an information processing device in which the script generation unit further inputs correct answer information that is correct information for the specified desired information for the sample file data to generate the script.

[0008] In addition to the above features, the present invention also provides an information processing device further having a script evaluation unit that evaluates the results of obtaining the specified desired information from the sample file data using the generated script in comparison with the correct answer information.

[0009] In addition to the above features, the present invention provides an information processing device in which the script generation unit further inputs the evaluation result by the script evaluation unit to generate the script.

[0010] In addition to the above features, the present invention also provides an information processing device that further has a script correction unit that inputs the generated script and some or all of the target file data into the trained language model and corrects the generated script to adapt it to the target file data.

[0011] In addition to the above features, the present invention also provides an information processing device in which the script correction unit further inputs a prompt that is the basis of the generated script into the trained language model to correct it.

[0012] In addition to the above features, the present invention also provides an information processing device in which the script correction unit also corrects the scripts stored in the script storage unit.

[0013] In addition to the above features, the present invention also provides an information processing device further comprising a detailed prompt setting unit that sets a detailed prompt that is a detailed prompt for acquiring desired information specified by the set prompt.

[0014] In addition to the above features, the present invention provides an information processing device further comprising a verification unit that verifies the acquisition result acquired by the desired information acquisition unit.

[0015] In addition to the above features, the present invention provides an information processing device in which the script correction unit corrects the script by reflecting the verification result by the verification unit.

[0016] We also provide an information processing method executed by an information processing device, which includes a prompt setting step of setting a prompt for specifying desired information, which is information related to a desired item, from a plurality of file data including a plurality of target items; a sample setting step of setting sample file data to be input into a trained language model together with the set prompt; a script generation step of inputting the set prompt and sample file data into the trained language model to generate a script for acquiring the desired information; and a desired information acquisition step of acquiring the desired information from the plurality of target file data using the generated script.

[0017] The present invention also provides an information processing program that causes an information processing device to execute the following steps: a prompt setting step for setting a prompt to specify desired information, which is information relating to a desired item from a plurality of file data including a plurality of target items; a sample setting step for setting sample file data to be input into a trained language model together with the set prompt; a script generation step for inputting the set prompt and sample file data into the trained language model to generate a script for acquiring the desired information; and a desired information acquisition step for acquiring the desired information from the plurality of target file data using the generated script.

[0018] The present invention also provides an information processing device having a script holding unit that holds a script for acquiring desired information, which is information relating to a desired item, from a plurality of file data including a plurality of target items; a held script correction unit that inputs part or all of the target file data into the trained language model and corrects the held script to adapt it to the target file data; and a second desired information acquisition unit that acquires the desired information from the plurality of target file data using the corrected script.

[0019] In addition to the above features, the information processing device further provides that the retained script correction unit inputs a prompt for correcting the retained script into the pre-trained language model for correction.

[0020] We also provide an information processing method executed by an information processing device, which includes a script holding step of holding a script for acquiring desired information, which is information about a desired item, from a plurality of file data including a plurality of target items; a held script modification step of inputting part or all of the target file data into the trained language model and modifying the held script to adapt it to the target file data; and a second desired information acquisition step of acquiring the desired information from the plurality of target file data using the modified script.

[0021] The present invention also provides an information processing program that causes an information processing device to execute the following steps: a script holding step of holding a script for acquiring desired information, which is information relating to a desired item, from a plurality of file data including a plurality of target items; a held script modification step of inputting part or all of the target file data into the trained language model and modifying the held script to adapt it to the target file data; and a second desired information acquisition step of acquiring the desired information from the plurality of target file data using the modified script.

[0022] According to the present invention, it is possible to obtain desired information from a group of file data containing various information while reducing the time and cost required, and to extract information with a certain degree of extraction accuracy and reproducibility.

[0023] FIG. 1 is a block diagram showing an example of the functional configuration of an information processing apparatus of Example 1; FIG. 2 is a conceptual diagram explaining the function of a script generation unit; FIG. 3 is a conceptual diagram showing an example of the configuration of hardware that realizes the information processing apparatus of Example 1; FIG. 4 is a flow diagram simply showing an example of the processing flow of the information processing apparatus of Example 1; FIG. 5 is a block diagram showing an example of the functional configuration of an information processing apparatus of Example 2; FIG. 6 is a diagram showing setting items and setting examples of a detailed prompt; FIG. 7 is a diagram showing how each setting item of a detailed prompt is applied;

[0024] Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings. However, the present invention should not be limited to these embodiments and can be embodied in various forms without departing from the spirit and scope of the present invention.

[0025] <Example 1> <Overview> The present invention generates a script (a simple program) by inputting sample file data and a prompt into a trained language model (LLM; hereinafter, this term may be abbreviated as "LLM"), typically a large-scale language model, to obtain desired information from a variety of file data groups. A static script can be generated that ensures robustness (the degree to which data can be accurately extracted from a variety of formats) within the range of the input samples. Furthermore, the LLM is called only once when generating the script, thereby reducing the time and cost required by conventional techniques. Furthermore, because processing is performed using a static script, the extraction results are uniquely determined.

[0026] The following describes the functions and processing flow of the information processing device, as well as the hardware. The functional blocks of the system described below can be implemented as a combination of hardware and software. Specifically, if a computer is used, these include hardware components such as a CPU (central processing unit), main memory, bus, or secondary storage device (such as a hard disk drive, nonvolatile memory, or storage media such as CDs or DVDs, and their reader drives), input devices used for information input, printers, display devices, and other external peripheral devices, as well as interfaces for those external peripheral devices, communication interfaces, driver programs and other application programs for controlling the hardware, and user interface applications. The CPU processes data input from input devices and other interfaces and stored in memory or on a hard disk in accordance with a program deployed in main memory, processing and storing the data, and generating commands to control the hardware and software. Alternatively, the functional blocks of the system can be implemented using dedicated hardware.

[0027] Furthermore, this invention can be realized not only as a system but also as a method. Furthermore, a part of such an invention can be configured as software. Furthermore, a program used to cause a computer to execute such software, and a recording medium on which the program is fixed, are naturally included within the technical scope of this invention (the same applies throughout this specification).

[0028] <Functional Configuration> Fig. 1 is a block diagram showing an example of the functional configuration of an information processing apparatus according to this embodiment. As shown in Fig. 1, the information processing apparatus 100 includes a prompt setting unit 101, a sample setting unit 102, a script generation unit 103, a script storage unit 104, and a desired information acquisition unit 105.

[0029] <Prompt Setting Unit> The prompt setting unit 101 has a function of setting a prompt for specifying desired information, which is information about a desired item, from multiple file data containing multiple target items. The target file data may be stored in a storage device provided in the information processing device, or may be stored in a storage device connected to the information processing device via a communication line or the like. The file data may be in a variety of file formats, including, but not limited to, Word files, Portable Document Format (PDF) files, Excel files, image files, Comma Separated Values ​​(CSV) files, text files, Building Information Modeling (BIM) files, 2D CAD (Computer Aided Design) files, and 3D model files.

[0030] Furthermore, "desired information" refers to information on a desired item or information obtained by performing some kind of calculation or processing on that item (such as total number, average information, maximum information, spatial relationships such as distance and collision, 3D model information, 3D graphic information, images, and text information). For example, if the "total number of elevators" is desired from a set of CSV files related to the facilities of multiple buildings, the desired information would be the information obtained by extracting the number of elevators in each building contained in each file and adding up those numbers. In addition to calculating numerical information, the desired information could also be the results of processing such as 3D spatial processing and 3D graphic processing. For example, if the "collision points between columns and beams" are desired from 3D model files of multiple buildings, the desired information would be the 3D spatial information obtained by extracting all column and beam models contained in each file, calculating whether or not there are any collisions between them, and extracting the collision points.

[0031] Furthermore, for example, if the target is 3D drawing files of multiple buildings and the "inconsistencies between the elevations and floor plans" are desired, all architectural design information for the elevations and floor plans contained in each file is extracted, and the inconsistencies are checked for consistency when reconstructed into 3D solids, and the text describing the inconsistencies becomes the desired information. In such 3D spaces and processing of 3D spaces, the present invention, which performs certain static processing, often allows for more accurate acquisition of the desired information. A prompt for specifying such desired information is set. This prompt may be set by the user or may be set in advance by the person providing the device to the user.

[0032] A script for acquiring the desired information specified by a prompt set in the script generation unit (described later) is generated, but the prompt setting unit may also set a prompt that instructs the generation of the script. For example, if the desired information is "total number of elevators" as in the above example, a prompt may be set with instructions specifying the desired information, such as "Please find the total number of elevators from multiple given CSV files," or a prompt may be set with instructions to create a script for acquiring the specified desired information, such as "Please create a script that finds the total number of elevators from multiple given CSV files."

[0033] Furthermore, when the script processing becomes complicated, a prompt for generating the script may be set in multiple steps. For example, in the example of extracting "collision points between columns and beams" from the above-mentioned three-dimensional model, the process may be divided into (1) a prompt for generating a script for extracting the column and beam models contained in each file, (2) a prompt for generating a script for checking whether or not there is a collision between them, and (3) a prompt for generating a script for acquiring information on the three-dimensional space where the collision points have been extracted, and the prompts for generating each script may be specified.

[0034] <Sample Setting Unit> The sample setting unit 102 has a function of setting sample file data to be input to the trained language model together with the set prompt. The sample file data is file data that serves as a model when desired information is acquired from multiple target file data. For example, when the "total number of elevators" is set as the desired information as in the above example, CSV files for multiple "building facilities" including information on the number of elevators are set as sample file data. When the "collision points between columns and beams" is set as the desired information, 3D model files for multiple building structures including information on columns and beams are set as sample file data. When the "consistency between elevations and floor plans" is set as the desired information, 2D drawing files for multiple "architectural designs" including information on elevations and floor plans are set as sample file data.

[0035] It is also preferable to set multiple file data containing desired information, each in a different format, as sample file data, because this contributes to the generation of a script that can generally obtain desired information from file data in various formats.

[0036] In most cases, the sample file data will naturally be a small number compared to the multiple file data to be acquired, but the opposite is also possible. The sample file data may be a part of the multiple file data to be acquired, or may be separate file data. The sample file data may be set by the user, or may be set in advance by the person who provides the device to the user.

[0037] For convenience, the prompt setting and the sample file data setting have been described as separate components, but the prompt and the sample file data may be configured to be set together. In other words, by specifying the desired information and setting a prompt that also includes link information to the sample file data, the functions of the prompt setting unit and the sample setting unit described above can be realized in the same way.

[0038] <Script Generation Unit> The script generation unit 103 has a function of inputting the set prompt and the set sample file data into the trained language model and generating a script for acquiring the specified desired information.

[0039] 2 is a conceptual diagram illustrating the function of the script generation unit. Illustrated are sample file data 201 and 202. The sample file data is a list showing the equipment (elevators, fire extinguishing equipment, sanitary equipment) and their quantities for each building. One sample file data, 201, is written in Japanese, while the other sample file data, 202, is mainly written in English.

[0040] These sample file data are input into the LLM along with the prompts. The following explanation uses the LLM, which is a typical example of a trained language model. Note that the trained language model may be anything other than the LLM, such as a small-scale language model or a multimodal language model that can handle images and other formats, as long as it can perform natural language processing tasks.

[0041] The prompt 203 shown in the figure reads, "We will now provide several CSV files listing building equipment as samples. These lines indicate the types and quantities of equipment in several buildings. Please create a script that extracts the number of elevators from these CSV files and calculates the total number." This instructs the generation of a script that calculates the desired information, the total number of elevators.

[0042] The LLM 204 generates a script in response to the input of the prompt 203 and the sample file data 201 and 202. By using a list of English characters as well as a list of Japanese characters as sample file data, the generated script 205 executes a process of adding up the total number of pieces of information in the "Number" column in the row where the "Equipment" column is "Elevator" and the total number of pieces of information in the "Number" column in the row where the "Equipment" column is "Elevator." By inputting various sample characters, it becomes possible to create a script that can accommodate so-called "variations in notation."

[0043] Furthermore, if the script processing is complex as described above, a script may be generated for each of the prompts set in multiple steps. It is also possible for the user to modify the generated script themselves.

[0044] Furthermore, by inputting sample file data in various formats, it is possible to generate a script that can appropriately acquire information from file data in each format. In the example of extracting "collision points between columns and beams" from the 3D model mentioned above, by inputting 3D models in multiple different formats as sample data, it is possible to generate a general-purpose script that can handle a variety of model formats.

[0045] The script generation unit can also be configured to generate a script by inputting correct answer information, which is information on the correct answer for the desired information specified for the sample file data. For example, in the above example, if the total number of elevators extracted from the set sample file data is "241," this "241" becomes the correct answer information. Inputting this correct answer information into the LLM also contributes to the generation of a script that can more accurately obtain the desired information.

[0046] The correct answer information specified here may be in any format, including not only numerical information but also a 3D spatial model resulting from the script processing, a 2D figure, an image, or text. Furthermore, the correct answer information may provide not only information on the final result of the script, but also correct answer information for the processing process. For example, in the example of extracting "collision points between columns and beams" from the aforementioned 3D model, (1) the column and beam models included in each file, (2) whether or not there is a collision between them, and (3) information on the 3D space from which the collision points are extracted may be provided as correct answer information for the processing process. Furthermore, because it requires expertise for a user to specify the 3D model that will serve as correct answer information, it is also desirable to provide a 3D viewer or display unit that allows the user to easily specify the 3D model or 3D space that will serve as correct answer information.

[0047] <Script Storage Unit> The script storage unit 104 has a function of storing the generated script. By having a script storage unit, it is possible to reuse a script that has been set once, and to reproducibly acquire values ​​from a large amount of target file data. In addition, the generated script may be used to store the acquisition results acquired by the desired information acquisition unit (described later), as well as the original prompt and sample file data that were input together.

[0048] <Desired Information Acquisition Unit> The desired information acquisition unit 105 has a function of acquiring the specified desired information from the target file data using the generated script. The generated script is executed on the target file data to perform processing to acquire the specified desired information. It is preferable to save the acquired results. This is because, as will be described later, the acquired results can be used for post-processing such as verifying and reformatting the acquired results.

[0049] Furthermore, the information acquired by the desired information acquisition unit may be passed to another script as new target file data. In other words, the generation of the script and the acquisition of desired information from the target file in this invention can be linked, making it possible to configure more complex processing.

[0050] As described above, the process of obtaining the desired information is performed by executing a script, which reduces the time and cost required compared to calling the LLM each time to obtain the desired information, and also enables the extraction of reproducible information with a certain degree of extraction accuracy.

[0051] Furthermore, there was a problem that "even if you try to prepare a static script to solve the problem, only engineers with specialized knowledge can create the script themselves." However, by generating scripts with LLM, anyone can create the script themselves.

[0052] <Hardware Configuration> Fig. 3 is a conceptual diagram showing an example of the configuration of hardware that realizes the information processing apparatus of Example 1. As shown in the figure, the information processing apparatus 300 has a CPU 301 that performs various arithmetic processing, a RAM 302 that is a volatile storage medium, a storage 303 that is a non-volatile storage medium such as a flash memory or HDD, a communication interface 304, and an input / output interface 305. The RAM 302 reads programs that perform various arithmetic processing to have the CPU 301 execute them, and also provides a work area for the programs. In addition, multiple addresses are assigned to the RAM 302, and programs executed by the CPU 301 can exchange data and perform processing by identifying and accessing these addresses (the same applies throughout this specification).

[0053] Here, the functions of the prompt setting unit 101, sample setting unit 102, script generation unit 103, and desired information acquisition unit 105 of the information processing device 100 in Fig. 1 are mainly realized by the CPU 301 and RAM 302 in Fig. 3. The function of the script accumulation unit 105 is mainly realized by the storage 303 in Fig. 3. In addition, when an external database for accumulating file data exists or an externally located extracted unit uses a trained language model such as an LLM, each function is realized by mutually exchanging signals and information via the communication interface 304 and the input / output interface 305.

[0054] <Processing Flow> FIG. 4 is a flow diagram illustrating a simplified example of the processing flow of the information processing device according to the first embodiment. First, a prompt is set to specify desired information, which is information related to a desired item, from multiple file data containing multiple target items (S401: prompt setting step). Then, sample file data to be input to the trained language model together with the set prompt is set (S402: sample setting step). Then, the set prompt and the set sample file data are input to the trained language model to generate a script for acquiring the specified desired information (S403: script generation step). Then, the generated script is accumulated (S404: script accumulation step). Then, the generated script acquires the specified desired information from the target file data (S405: desired information acquisition step). The sample setting step may be performed before the prompt setting step, or both steps may be performed integrally. The script accumulation step may also be performed after the desired information acquisition step.

[0055] <Effects> According to the information processing device of this embodiment, it is possible to obtain desired information from a group of file data containing various information while reducing the time and cost required, and it is also possible to extract reproducible information with a certain degree of extraction accuracy.

[0056] <Example 2> <Overview> This example is an information processing device based on Example 1, and further includes a configuration for evaluating and modifying the generated script, a configuration for setting more detailed prompts, and a configuration for verifying the obtained results.

[0057] <Functional Configuration> Fig. 5 is a block diagram showing an example of the functional configuration of an information processing apparatus of this embodiment. As shown in Fig. 5, the information processing apparatus 500 includes, similarly to the first embodiment, a prompt setting unit 501, a sample setting unit 502, a script generation unit 503, a script storage unit 504, and a desired information acquisition unit 505, and further includes a script evaluation unit 506, a script correction unit 507, a detailed prompt setting unit 508, and a verification unit 509. A description of the same configuration as in the first embodiment will be omitted, and the script evaluation unit 506, the script correction unit 507, the detailed prompt setting unit 508, and the verification unit 509 will be described below.

[0058] <Script Evaluation Unit> The script evaluation unit 506 has a function of evaluating the result of acquiring the specified desired information from the sample file data using the generated script by comparing it with the correct answer information. This correct answer information is as described in the script generation unit of Example 1. By actually acquiring the desired information from the sample file data using the generated script and comparing the result with the correct answer information, it is possible to evaluate how accurate the script is. In other words, if the acquired result matches the correct answer information, it can be evaluated as accurate.

[0059] Furthermore, by configuring the script generation unit to input the evaluation results into the LLM, it is possible to generate a script based on the evaluation results, which can be useful for generating a more accurate script. For example, it is possible to configure the system to continue regenerating the script until the acquired information matches the correct information. Note that the script evaluation may be performed on the scripts stored in the script storage unit.

[0060] <Script Correction Unit> The script correction unit 507 has a function of inputting the generated script and part or all of the target file data into the trained language model, and correcting the generated script to adapt it to the target file data. Note that the trained language model used for the correction may be the same as the trained language model used in the script generation unit described above, or may be a different one.

[0061] For example, if the target file data contains file data in a file format that was not included in the sample file data entered when creating the script, or if the target file data contains item names that should be acquired, the desired information may not be acquired accurately. To prevent this situation, the generated script is input into a trained language model along with the target file data.

[0062] The script is then modified by providing a prompt such as the following example: "This script was created with the following objective in mind: 'Select the row that indicates elevators from the list of building equipment in the CSV file, extract the information in the column indicating the total number, and calculate the total number.' However, it may not function properly with the file data being processed. Identify the malfunctioning part and modify the script." For example, if a script created to obtain the "total number of elevators" executes a process that adds up the total number of entries in the "Number" column for rows where the "Equipment" column is "Elevator" and the total number of entries in the "Number" column for rows where the "Equipment" column is "Elevator," if the target file data includes file data with a "Number" column for rows where the "Equipment" column is "Elevator," the information in this file data will be omitted from the acquisition target, making it impossible to obtain accurate desired information. Therefore, by inputting the created script and the target file data into a trained language model along with the prompt described above, a script adapted to the target file data can be generated.

[0063] The modification to adapt to the file data can be done by inputting the file data into the LLM one by one from the target file data, or by inputting all the file data into the LLM, or by inputting the prompt that was the basis for creating the script to be modified.

[0064] Furthermore, the scripts stored in the script storage unit can also be modified in the same way as the generated scripts. Because the stored scripts may need to be modified due to an increase, decrease, or change in the target file data, it is preferable to configure the system so that such modifications can be made.

[0065] <Detailed Prompt Setting Unit> The detailed prompt setting unit 508 has a function of setting a detailed prompt, which is a detailed prompt for acquiring desired information specified by the set prompt. The setting items of the detailed prompt described below include items to be applied in script generation, items to be applied to target file data, items to be applied when acquiring desired information from target file data by executing the generated script, and even items to be applied in post-processing using LLM after script execution. The manner in which the detailed prompt is applied can be set in various ways.

[0066] Figure 6 is a diagram illustrating the setting items (name, description, necessity) of the detailed prompt and an example of the setting. In this example, the prompt set to specify the desired information is "Please output the collision points between the column and the beam."

[0067] For example, setting item 1 is named "Assign multiple desired information names," and is indicated as a setting item for "accurate understanding of character definitions." The explanation for this setting item is "explicitly assign multiple desired information to be extracted," with an example being "["pillar," "Pillar"]." By setting this detailed prompt, an instruction is added to the instruction "Please output the collision points between pillars and beams," which specifies that not only "pillar" but also "pillar" should be extracted.

[0068] Other setting items for the detailed prompt include "Add description of desired information," which adds an explanation of the desired information to be extracted to ensure an accurate understanding of the character definition, "Specify format," which allows the user to specify the format they want to extract to prevent erroneous extraction and standardize the format of the output results, "Set conditions," which changes the extracted content according to specific conditions to improve exception handling and accuracy, and "Show sample script," which sets in advance a script that LLM will use as a reference when generating a script to improve the accuracy of script generation in LLM. Of course, users can set various setting items themselves to configure the detailed prompt.

[0069] Here, the application methods for each of the settings mentioned above can be broadly divided into three: Method 1, "narrowing down file contents," Method 2, "connecting prompts," and Method 3, "checking and reformatting detection results." Method 1 involves narrowing down the file data to be input before inputting it into LLM, Method 2 involves connecting the set detailed prompt to the main prompt, and Method 3 involves reformatting the extraction results according to a specified format, etc.

[0070] 7 is a diagram showing how each setting item of the detailed prompt is applied. As shown in the figure, "Linking prompts" of Method 2 is applied to the items "Assigning multiple desired information names," "Assigning a description of desired information," "Condition setting," and "Show sample script." Furthermore, all of Methods 1 to 3 are applied to "Format specification." Application examples will be described later.

[0071] FIG. 8 is a conceptual diagram illustrating an example of an input screen for setting a detailed prompt. As shown in the figure, a previously set prompt, "Please output the collision points between the columns and beams," is displayed in the upper left portion of the screen 801. Input fields 802 for setting items, including "Desired Information Name," "Format Specification," "Condition Setting," and "Sample Script," are displayed on the left side of the screen. Furthermore, input fields for additional setting items are displayed in response to user input. The detailed prompt is set by accepting user input into each of these input fields. The script generation unit then applies the set detailed prompt to generate a script, or the desired information acquisition unit applies the set detailed prompt to acquire the desired information. Setting the detailed prompt in this manner can improve the accuracy of desired information acquisition.

[0072] An example of applying the above detailed prompt is shown below. For example, if the "Desired Information Name" field is set to "'Pillar' also refers to 'column'" and the "Condition Settings" field is set to "If a column cannot be extracted, output a blank," this detailed prompt is connected to the main prompt and input. Then, by applying the "Desired Information Name," the 3D model marked "Pillar" is also extracted as a column, and the collision point between the column and the beam is output. Furthermore, if a column cannot be extracted from the target file data, a blank is output.

[0073] Furthermore, when setting the detailed prompt, the detailed prompt setting unit can be configured to automatically set each setting item according to the set prompt. Alternatively, it may be configured to accept the user's settings while recommending some setting for items that have not been set. Accepting the detailed prompt settings from the user allows for flexible and appropriate extraction based on the user's intentions, but it may be difficult for the user to set the optimal prompt. Therefore, functions such as automatic entry and suggestion of detailed prompts are effective. These functions can simplify the process and improve operability.

[0074] Furthermore, for simplification and improved operability, the desired information acquisition unit is preferably configured to perform a test applying the set prompt and detailed prompt before executing the script on all of the target file data. This test involves executing the script on a portion of the target file data. Based on the results of this test, the user can determine whether the set prompt and detailed prompt will bring about the desired results, and can reconfigure the prompts, etc. to obtain more desirable results.

[0075] As shown in Fig. 8, a "Test" button 804 is displayed on the left side of a screen 801, below a detailed prompt input field 802 and a prompt display field 803, and a test is performed by clicking this button. The test results are then displayed in a dotted-line frame 805, which is shown for explanatory purposes in the figure. Based on the extracted results from this test, the user can reset the prompt or perform actual acquisition processing using a script that has obtained the test results.

[0076] In this example, the detailed prompt is set separately from the prompt for specifying desired information, but the prompt and the detailed prompt may be set continuously and integrally.

[0077] <Verification Unit> The verification unit 509 has a function of verifying the results obtained by the desired information acquisition unit. There are various specific modes of verification by the verification unit. The verification described below may be performed by inputting a prompt into the LLM, or by executing a coded script.

[0078] 9 is a diagram illustrating various settings for performing verification. As shown in the figure, four types of settings can be made: "Use detailed prompts," "Verification prompts," "Verification script," and "Compare files."

[0079] "Use detailed prompt" uses the extraction settings set in the detailed prompt for verification. For example, if a format is specified in the "Format specification" setting item of the detailed prompt, the specified format is compared with the extraction results to verify whether the extraction results are within a specified similarity range with the specified format. In addition, the settings in "Condition settings" are used to verify whether "if extraction is not possible, a blank is output?"

[0080] The "verification prompt" is used to individually set a prompt for verification, for example, by setting and inputting a prompt such as "Please check whether this information indicates the material of the elevator door." The "verification script" is used to individually set a script for verification, for example, as shown in the figure, by inputting a command to return "Error" if the detection result is less than "1" and "OK" otherwise.

[0081] Furthermore, when extracting from multiple files, "file comparison" compares the extracted results with other files to confirm their validity. As shown in the example, when comparing extracted files A to D, files A, C, and D all contain only numbers and symbols, while file B is primarily written in kanji. In such a case, the verification result is that "file B is not valid compared to the others."

[0082] Here, when the verification unit verifies the obtained results, the script correction unit can be configured to reflect the verification results and correct the script. For example, if the information in the extracted results is an error as described above, an instruction such as "In the previous extraction, information XXX was extracted, but the verification result was an error. Please correct the script taking this error result into consideration" is input to the LLM to correct the script.

[0083] <Hardware Configuration> The information processing apparatus of this embodiment can be realized by the hardware configuration shown in Fig. 3 according to the embodiment 1. The functions of a script evaluation unit 506, a script correction unit 507, a detailed prompt setting unit 508, and a verification unit 509, which are components specific to the information processing apparatus of the embodiment 2 shown in Fig. 5, are mainly realized by the CPU 301 and RAM 302 of Fig. 3.

[0084] <Processing Flow> The processing flow of the information processing device of this embodiment is basically the same as the processing flow of the information processing device of Example 1. The information processing device of this embodiment further includes a script evaluation step of evaluating a result of desired information obtained from sample file data using a generated script by comparing it with correct answer information, a script correction step of inputting the generated script and some or all of the target file data into a trained language model and correcting the generated script to adapt it to the target file data, a detailed prompt setting step of setting a detailed prompt that is a detailed prompt for obtaining desired information using the set prompt, and a verification step of verifying the result obtained in the desired information obtaining step.

[0085] <Effects> According to the information processing device of this embodiment, it is possible to provide an information processing device that aims to improve the accuracy and robustness of desired information acquisition.

[0086] <Additional Functions> Based on the first or second embodiment, the information processing device may be configured with the following additional functional configurations.

[0087] <Filtering Unit> The filtering unit has the function of removing predetermined file data from the target file data to be acquired by the desired information acquisition unit. There are various filtering methods. For example, filtering is performed based on file attributes (extension, size, file name, data items associated with the file, etc.). Alternatively, individual keywords can be set and filtering is performed based on these keywords. Specifically, filtering is performed by generating a script for filtering using semantic search, clustering, character search, etc., and executing the script. Filtering can also be performed by issuing instructions to the LLM. For example, by entering an instruction such as "Does this file contain elevator content?", filtering can be performed based on whether or not the file contains elevator content.

[0088] This filtering function can meet user requests such as, for example, obtaining the area from the architectural summary of 500 target file data, but skipping the elevation drawings.

[0089] <Conversion Unit> The conversion unit has a function of converting the format of target file data according to the characteristics of the file data. If the information processing device has a conversion unit, the desired information acquisition unit acquires the desired information from the file data converted by the conversion unit. For example, if the file data is in PDF format, it is converted into a text file format. In addition, in the case of image data, character recognition is performed using OCR to convert it into a text file format. In addition, three-dimensional data may be converted into two-dimensional data or an image. Performing such conversion contributes to improving robustness.

[0090] Furthermore, when converting to a text file, it is also preferable to add location information to the text. Figure 10 is a conceptual diagram illustrating an example of converting PDF file data into a text file with location information added. Figure 10(a) shows a portion of a PDF file showing a building area table for a house. Figure 10(b) shows an example of converting the text into a JSON format, in which the text for "shape," "formula," and "area" are described along with their location information. Figure 10(c) shows an example of converting the text into an array format, in which the text is similarly described along with location information. Adding location information in this way allows extraction to take into account the relationships between text, contributing to improved robustness. Figure 10(d) shows an example of converting text that, in the original file, shows a table showing the "area" and "tatami mats" for "Western-style Room 1," "Western-style Room 2," and "Western-style Room 3," into text with table information (within the dotted-line frame in the figure) instead of location information. This conversion allows the table structure to be retained and retrieved.

[0091] Figure 11 is a conceptual diagram showing another example of converting file data formats. As shown in Figure 11, in the case of a file containing graphics (such as a kitchen floor plan), converting it to SVG format and converting it into text containing graphic information makes it easier to retrieve using a script. Conversely, two-dimensional vector information can be converted into a raster image, or three-dimensional data can be converted into two-dimensional data.

[0092] <Data Reduction Unit> The data reduction unit has the function of reducing the target file data. Data reduction can be performed in various ways. For example, data reduction can be performed by narrowing down the target file data to a specific space, property, area, specific page or section, paragraph, table, etc. It is also possible to filter by file attributes (page number, location, etc.), by individual keywords (semantic search, clustering, character search), or by spatial location (x, y, z, coordinates). Filtering can also be performed by inputting instructions to the LLM ("Does this file contain elevator contents?").

[0093] FIG. 12 is a conceptual diagram illustrating another aspect of data reduction. As shown in FIG. 12( a), a specific portion 1202 is cut out from a piece of file data 1201, and a check is made to see if it contains the desired data. If the desired data is found to be included, that portion is subjected to an acquisition process to obtain the desired information. If the desired data is not included, a portion 1203 shifted from the previous portion is cut out, and a similar check is performed. In this way, by excluding from the acquisition target those portions that do not contain the desired data in the pre-acquisition check, processing efficiency can be improved. Note that this check may be performed by executing a script, using an LLM, or by other methods. Furthermore, such processing may be performed in three-dimensional space.

[0094] 12B, the above check is performed while shifting the specific location, and the location containing the desired data is temporarily stored in memory 1204. Then, it is checked whether processing memory 1204 contains all the elements necessary to acquire the desired data, and if it does, the location stored in memory is subjected to acquisition processing by the desired information acquisition unit. On the other hand, if it does not contain all the elements, the specific location is shifted further and the series of processes starting from the above check are repeated.

[0095] <Basis Display Unit> The basis display unit has a function of displaying the basis for the acquisition result acquired by the desired information acquisition unit.

[0096] This information processing method allows users to set a prompt to specify the desired information, input the sample file data into the LLM, and then execute the generated script to obtain the desired information. However, it can be difficult to set a prompt to generate the optimal script to obtain the desired information. Therefore, by displaying the reasons (intermediate processes, etc.) that led to the obtained results, users can be shown "what they can do to improve the obtained results."

[0097] Figure 13 is a conceptual diagram showing an example of displaying a location on an image as evidence. The figure shows a PDF file showing a building area table for a house, and the location of information (text) obtained from this file is highlighted on the image by a thick dotted frame 1301. This allows the user to understand where the results were obtained. For scripts that process 3D models, displaying the script's processing process and highlighting the information used during that process can also be useful for confirming the basis.

[0098] Additionally, a display explaining the reason for the acquisition may be provided. For example, prior to acquisition, a preprocessing instruction could be entered into the LLM: "Please output the detailed process-by-process reason for outputting this information as the acquisition result." After acquisition, the LLM would display the acquisition results, along with the rationale, such as, "Z-01301 was extracted as the drawing number because it is located 140 pixels to the right of the text 'Drawing Number' and matches the specified regular expression." In this way, by displaying the prompts the user set and the effect of the script generated by them on the acquisition results, the user can reflect on various settings and optimize the acquisition of desired information.

[0099] Third Embodiment Overview This embodiment is an information processing apparatus similar to the information processing apparatus of the first or second embodiment.

[0100] 14 is a block diagram showing an example of the functional configuration of an information processing apparatus according to this embodiment. As shown in FIG. 14, the information processing apparatus 1400 includes a script storage unit 1401, a stored script correction unit 1402, and a second desired information acquisition unit 1403.

[0101] <Script Storage Unit> The script storage unit 1401 has a function of storing a script for acquiring desired information, which is information related to a desired item, from a plurality of file data including a plurality of target items. In the first embodiment, the script generated by the script generation unit was the target of modification by the script modification unit, but in this embodiment, a script created and set in advance is stored in the script storage unit. The contents of the stored script are the same as the scripts in the first and second embodiments, so a repeated description will be omitted.

[0102] <Stored script correction unit> The stored script correction unit 1402 has the function of inputting part or all of the target file data into the trained language model, and correcting the stored script so that it is adapted to the target file data.

[0103] The function of the stored script correction unit is the same as the function of the script correction unit in the first and second embodiments, except that the target of correction is the script stored in the script storage unit. Therefore, a redundant explanation will be omitted here.

[0104] The system can also be configured to input prompts to the trained language model to modify the script, such as specifying file types or formats to be adapted for acquisition or specifying data to be removed.

[0105] <Second desired information acquisition unit> The second desired information acquisition unit 1403 has a function of acquiring the desired information from the target multiple file data using the modified script. The function of the second desired information acquisition unit is the same as the function of the desired information acquisition unit in Example 1 and Example 2, except that the desired information is acquired using the script modified by the stored script modification unit. Therefore, a repeated explanation will be omitted here.

[0106] <Hardware Configuration> The information processing apparatus of this embodiment can be realized by the hardware configuration shown in Fig. 3 according to the first or second embodiment. The functions of the stored script correction unit 1402 and the second desired information acquisition unit 1403 of the information processing apparatus of the third embodiment shown in Fig. 14 are mainly realized by the CPU 301 and RAM 302 in Fig. 3. Furthermore, the function of the script storage unit 1401 is mainly realized by the storage 303 in Fig. 3.

[0107] <Processing Flow> Figure 15 is a flow diagram showing an example of the processing flow of the information processing device of this embodiment. First, a script for acquiring desired information, which is information about a desired item, from multiple file data containing multiple target items is stored (S1501: script storage step). Then, part or all of the target file data is input into a trained language model, and the stored script is modified to adapt to the target file data (S1502: stored script modification step). Then, the modified script is used to acquire the desired information from the target multiple file data (S1503: conversion step).

[0108] <Effects> According to the information processing device of this embodiment, by making it possible to modify a script that has been set up and stored in advance, it is possible to obtain desired information using a script that is adapted to the target file data.

[0109] 100, 500: Information processing device 101, 501: Prompt setting unit 102, 502: Sample setting unit 103, 503: Script generation unit 104, 504: Script storage unit 105, 505: Desired information acquisition unit 506: Script evaluation unit 507: Script correction unit 508: Detailed prompt setting unit 509: Verification unit 301: CPU 302: RAM 303: Storage 304: Communication interface 305: Input / output interface 1400: Information processing device 1401: Script holding unit 1402: Held script correction unit 1403: Second desired information acquisition unit

Claims

1. An information processing device having: a prompt setting unit that sets a prompt for specifying desired information, which is information about a desired item, from multiple file data including multiple target items; a sample setting unit that sets sample file data to be input into a trained language model together with the set prompt; a script generation unit that inputs the set prompt and the set sample file data into the trained language model to generate a script for acquiring the specified desired information; and a desired information acquisition unit that acquires the specified desired information from the target file data using the generated script.

2. The information processing device according to claim 1, further comprising a script storage unit for storing the generated script.

3. The information processing device according to claim 1 or 2, wherein the script generating unit generates the script by further inputting correct answer information that is correct information for the specified desired information for the sample file data.

4. The information processing device according to claim 3, further comprising a script evaluation unit that evaluates the result of acquiring the specified desired information from the sample file data using the generated script in comparison with the correct answer information.

5. The information processing apparatus according to claim 4, wherein the script generation section further inputs the evaluation result from the script evaluation section to generate the script.

6. An information processing device as described in claim 1 or 2, further comprising a script correction unit that inputs the generated script and part or all of the target file data into the trained language model and corrects the generated script to adapt it to the target file data.

7. The information processing device according to claim 6, wherein the script correction unit further inputs a prompt that is the basis of the generated script into the trained language model to correct it.

8. The information processing device according to claim 6 or 7, wherein said script correction section also corrects the script stored in said script storage section.

9. The information processing apparatus according to claim 1 or 2, further comprising a detailed prompt setting unit for setting a detailed prompt, which is a detailed prompt for acquiring desired information designated by the set prompt.

10. The information processing device according to claim 1 or 2, further comprising a verification unit that verifies the acquisition result acquired by the desired information acquisition unit.

11. The information processing device according to claim 10, wherein the script correction unit corrects the script by reflecting the verification result by the verification unit.

12. An information processing method executed by a target information processing device, comprising: a prompt setting step for setting a prompt for specifying desired information, which is information relating to a desired item from a plurality of file data including a plurality of target items; a sample setting step for setting sample file data to be input into a trained language model together with the set prompt; a script generation step for inputting the set prompt and the set sample file data into the trained language model to generate a script for acquiring the specified desired information; and a desired information acquisition step for acquiring the specified desired information from the target file data using the generated script.

13. An information processing program that causes an information processing device to execute the following steps: a prompt setting step that sets a prompt for specifying desired information, which is information about a desired item, from multiple file data including multiple target items; a sample setting step that sets sample file data to be input into a trained language model together with the set prompt; a script generation step that inputs the set prompt and the set sample file data into the trained language model to generate a script for acquiring the specified desired information; and a desired information acquisition step that acquires the specified desired information from the target file data using the generated script.

14. An information processing device having: a script holding unit that holds a script for acquiring desired information, which is information relating to a desired item, from a plurality of file data including a plurality of target items; a held script correction unit that inputs the held script and part or all of the target file data into the trained language model and corrects the held script to adapt it to the target file data; and a second desired information acquisition unit that acquires the desired information from the target file data using the corrected script.

15. The information processing apparatus according to claim 14, wherein the stored script correction unit further inputs a prompt for correcting the stored script into the trained language model to correct it.

16. An information processing method executed by an information processing device, comprising: a script holding step of holding a script for acquiring desired information, which is information relating to a desired item, from a plurality of file data including a plurality of target items; a held script modification step of inputting part or all of the target file data into the trained language model and modifying the held script to adapt it to the target file data; and a second desired information acquisition step of acquiring the desired information from the target file data using the modified script.

17. An information processing program that causes an information processing device to execute the following steps: a script holding step of holding a script for obtaining desired information, which is information relating to a desired item, from a plurality of file data including a plurality of target items; a held script modification step of inputting part or all of the target file data into the trained language model and modifying the held script to adapt it to the target file data; and a second desired information acquisition step of obtaining the desired information from the target file data using the modified script.