Information processing system
By calculating the feature vector distance of text data in the knowledge base and setting a threshold, the problem of duplicate data in the knowledge base is solved, the retrieval accuracy is improved and the storage cost is reduced.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- TOYOTA JIDOSHA KK
- Filing Date
- 2025-09-01
- Publication Date
- 2026-06-02
AI Technical Summary
In existing technologies, knowledge bases may contain duplicate registrations of text data with identical or nearly identical content, leading to decreased retrieval accuracy and increased storage device utilization costs.
By calculating the distance between feature vectors of text data and setting a threshold, text data with similarity within a specific range can be deleted or associated, thus optimizing the management strategy of the knowledge base.
It improves the retrieval accuracy of the knowledge base, reduces the storage of duplicate data, and lowers the utilization cost of storage devices.
Smart Images

Figure CN122132546A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the technical field of information processing systems. Background Technology
[0002] As such a system, for example, a system has been proposed that enables a language model to generate document-based query data, and utilizes document-to-query data pairs in the learning of a retrieval model for a chatbot (see Japanese Patent Application Publication No. 2023-076413). Summary of the Invention
[0003] As a chatbot, this approach combines large language models (LLMs) with retrieval from specific information sources (hereinafter, appropriately referred to as "knowledge bases"). Therefore, a chatbot is proposed that utilizes a mechanism of Retrieval-Augmented Generation (RAG), which assigns unique information sources to large language models. Here, the knowledge base contains multiple data sets (e.g., documents). For example, a knowledge base may sometimes contain a single data set along with other data obtained by updating a portion of that single data set. For example, a knowledge base may sometimes contain multiple data sets with identical or nearly identical content. In such cases, the retrieval accuracy of the knowledge base may decrease. Furthermore, large language models are language models constructed using very large datasets and deep learning techniques.
[0004] The present invention was made in view of the above-mentioned problems, and its objective is to provide an information processing system that can improve the retrieval accuracy of a knowledge base.
[0005] One embodiment of the information processing system of the present invention includes:
[0006] The calculation unit calculates the distance in the feature space between a first feature vector related to a first text data registered in the database and a second feature vector related to a second text data registered in the database;
[0007] The determination unit determines whether the calculated distance is less than a first threshold; and
[0008] The control unit deletes either the first text data or the second text data if the calculated distance is less than the first threshold.
[0009] Another aspect of the information processing system of the present invention includes:
[0010] The calculation unit calculates the distance in the feature space between a first feature vector related to the first text data and a second feature vector related to the second text data registered in the database;
[0011] The determination unit determines whether the calculated distance is less than a first threshold; and
[0012] The control unit may, if the calculated distance is less than the first threshold, either not register the first text data in the database but maintain the registration of the second text data, or register the first text data in the database and delete the second text data. Attached Figure Description
[0013] The features, advantages, and technical and industrial significance of exemplary embodiments of the present invention will now be described with reference to the accompanying drawings, in which the same reference numerals show the same elements, and wherein:
[0014] Figure 1 This is a diagram illustrating the structure of an information processing system according to an embodiment.
[0015] Figure 2 This is a block diagram illustrating an example of the structure of the computing device according to an embodiment.
[0016] Figure 3 This is a flowchart illustrating the operation of the information processing system according to the first embodiment.
[0017] Figure 4 This is a flowchart illustrating the operation of the information processing system according to the second embodiment. Detailed Implementation
[0018] Implementation Method 1
[0019] Reference Figures 1 to 3 This describes the first implementation of the information processing system. In Figure 1 In this system, information processing system 1 includes information processing device 10, server 20, and knowledge base 30. Information processing device 10, server 20, and knowledge base 30 are configured to communicate with each other via a network (NW). Server 20 is a server used for applying Large Language Models (LLM). Therefore, server 20 can be called an LLM server. Furthermore, server 20 can be a cloud server.
[0020] Chatbot
[0021] Server 20 and knowledge base 30 can provide chatbot services using RAG. For example, user U can utilize the chatbot service via terminal device 50. In this case, user U can operate terminal device 50 to launch an application for utilizing the chatbot service. User U can operate terminal device 50 to input a question into the input field of the chat application. Here, "question" is not limited to interrogative sentences. For example, a "question" can be a sentence containing expressions such as "Please tell ****" or "Please answer ****" regarding delegation, instructions, commands, etc. Therefore, a "question" is not limited to sentences in interrogative form, but is a concept that includes sentences containing expressions such as delegation, instructions, commands, etc. That is, a "question" can mean a sentence that requires the other party to answer.
[0022] Terminal device 50 can retrieve knowledge base 30 based on the input question. Terminal device 50 can send first information containing the input question and text data as the retrieval result of knowledge base 30 to server 20. Server 20 can input the question and text data contained in the first information as prompts into a large language model. Server 20 can obtain the answer to the question from the output of the large language model. Server 20 can send second information representing the answer to terminal device 50. Upon receiving the second information, terminal device 50 can display the answer represented by the second information on a screen related to the chat application. Furthermore, terminal device 50 can be a personal computer, tablet terminal, or smartphone.
[0023] Information processing device 10
[0024] exist Figure 1 In this device, the information processing apparatus 10 includes a computing unit 11, a storage unit 12, a communication unit 13, an input unit 14, and an output unit 15. The computing unit 11, storage unit 12, communication unit 13, input unit 14, and output unit 15 are connected via a data bus 16. Furthermore, the information processing apparatus 10 can be a personal computer, a tablet terminal, or a smartphone.
[0025] The arithmetic unit 11 may have a processor. Furthermore, the arithmetic unit 11 may have a single processor or multiple processors. That is, the arithmetic unit 11 may have more than one processor. Moreover, the processor may be a multi-core processor. In the case where the arithmetic unit 11 has a single processor that functions as a multi-core processor, it can be said that the arithmetic unit 11 logically has multiple processors.
[0026] The processor may be at least one of a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), an FPGA (Field Programmable Gate Array), and a TPU (Tensor Processing Unit).
[0027] The storage device 12 may be at least one of RAM (Random Access Memory), ROM (Read Only Memory), hard disk drive, optical disk drive, SSD (Solid State Drive), and optical disk array. That is, the storage device 12 may be implemented by a single device or by multiple devices.
[0028] The communication device 13 can also communicate with external devices of the information processing device 10. Furthermore, the communication device 13 can perform both wired and wireless communication.
[0029] Input device 14 is a device capable of receiving input of information to information processing device 10 from an external source. Input device 14 may include user-operable devices (e.g., keyboard, mouse, touch panel, etc.) of information processing device 10. Input device 14 may include a recording medium reading device capable of reading information recorded on a recording medium that can be loaded and unloaded from information processing device 10, such as a USB (Universal Serial Bus) memory. Furthermore, when information is input to information processing device 10 via communication device 13 (in other words, when information processing device 10 obtains information via communication device 13), communication device 13 may function as an input device.
[0030] Output device 15 is a device capable of outputting information to the external system of information processing device 10. Output device 15 may include a display device capable of outputting visual information such as characters and images as the information. Furthermore, output device 15 may also include a speaker capable of outputting auditory information such as sound as the information. Output device 15 may also include a vibration motor capable of outputting tactile information such as vibration as the information. Output device 15 may also include a printer. Output device 15 may also be capable of outputting information to a recording medium that can be loaded and unloaded from information processing device 10, such as a USB memory. Furthermore, when information processing device 10 outputs information via communication device 13, communication device 13 may function as an output device.
[0031] Storage device 12 is capable of storing desired data. The storage device 12 may store a computer program CP executed by the arithmetic unit 11. When the arithmetic unit 11 executes the computer program CP, the storage device 12 may temporarily store data temporarily used by the arithmetic unit 11.
[0032] Furthermore, the computer program CP can also be recorded on a computer-readable and non-temporary recording medium. In this case, the recording medium can be read using a recording medium reading device (not shown) provided with the information processing apparatus 10, thereby storing the computer program CP in the storage device 12. Furthermore, at least one of optical discs, magnetic media, optical disks, semiconductor memory, and any other media capable of storing programs can be used as the recording medium. Additionally, the computer program CP can also be obtained from an external (not shown) device via the communication device 13. In other words, the computer program CP can also be downloaded from an external device to the storage device 12 of the information processing apparatus 10.
[0033] The arithmetic unit 11 (e.g., a processor) can, together with the storage device 12 storing the computer program CP (in other words, together with the storage device 12 and the computer program CP stored in the storage device 12), perform the processing that the information processing device 10 should perform. For example, the computer program CP can also be executed by the arithmetic unit 11, thereby implementing logical functional modules for performing the processing that the information processing device 10 should perform within the arithmetic unit 11 (e.g., within the processor).
[0034] Knowledge Base 30
[0035] In knowledge base 30, multiple text data can be registered. This text data can be data obtained by segmenting text contained in a document. Such data can be called a "data block". Furthermore, methods for segmenting text contained in a document can include, for example, segmenting by a certain length (in other words, fixed length), segmenting by sentence based on sentence delimiters, and segmenting based on Markdown (a lightweight markup language), etc. In addition, knowledge base 30 can vectorize and register multiple text data separately. That is, knowledge base 30 can be a vector database / vector repository. Furthermore, in addition to text data, image data can also be registered in knowledge base 30.
[0036] Based on the inventors' research, the following points are clarified here: New text data can be registered in the knowledge base 30 at any time. On the other hand, the knowledge base 30 may contain multiple pieces of text data with identical or nearly identical content, or it may contain both the original and updated text data. Furthermore, during a search of the knowledge base 30, it is possible to retrieve two or more pieces of text data with duplicate content, or to retrieve both the original and updated text data. As a result, the retrieval accuracy of the knowledge base 30 may decrease. That is, in the aforementioned chatbot service, the response accuracy of the large language model may decrease.
[0037] Therefore, the information processing apparatus 10 of this embodiment manages multiple text data registered in the knowledge base 30. For example... Figure 2 As shown, the arithmetic unit 11 of the information processing apparatus 10 includes a calculation unit 111, a decision unit 112, and a control unit 113 for managing text data. The calculation unit 111, decision unit 112, and control unit 113 can be implemented as the aforementioned logical function modules. However, at least one of the calculation unit 111, decision unit 112, and control unit 113 can be implemented as a physical processing circuit. Alternatively, at least one of the calculation unit 111, decision unit 112, and control unit 113 can also be implemented as a mixture of logical function modules and physical processing circuits.
[0038] Reference Figure 3 The flowchart illustrates the operation of the information processing device 10. Figure 3 In this process, the computing unit 111 of the information processing device 10 selects the first text data and the second text data registered in the knowledge base 30. The computing unit 111 calculates the distance in the feature space between the first feature vector related to the first text data and the second feature vector related to the second text data (S101). Furthermore, the distance calculated in S101 can be Euclidean distance. However, the calculated distance can also be cosine distance (in other words, cosine similarity).
[0039] The determination unit 112 of the information processing device 10 determines whether the distance calculated in the processing of S101 is less than the first threshold (S102). If it is determined in the processing of S102 that the distance is less than the first threshold (S102: "Yes"), the control unit 113 of the information processing device 10 deletes one of the first text data and the second text data from the knowledge base 30 (S104).
[0040] For example, control unit 113 can delete either the first text data or the second text data from knowledge base 30 based on at least one of the update date and time or version information. In this case, control unit 113 can delete the text data with the earlier update date and time from the first text data and the second text data. Control unit 113 can also delete the text data with the earlier version indicated by the version information from the first text data and the second text data.
[0041] If, during processing S102, it is determined that the distance is greater than the first threshold (S102: "No"), the determination unit 112 determines whether the distance is less than the second threshold (S103). Here, the second threshold is a value greater than the first threshold. If, during processing S103, it is determined that the distance is less than the second threshold (i.e., first threshold < distance < second threshold) (S103: "Yes"), the control unit 113 associates the first text data with the second text data (S105).
[0042] If the distance is determined to be greater than the second threshold in the processing of S103 (S103: "No"), the control unit 113 maintains the registration of the first text data and the second text data.
[0043] The "first threshold" is a value used to determine whether to delete one of the first and second text data. The "second threshold" is a value used to determine whether to associate the first and second text data. The first and second thresholds can be predetermined fixed values or variable values corresponding to certain parameters. The first and second thresholds can be set based on the degree of repetition of the content of the two text data and the relationship between the distance between the two feature vectors related to the two text data, respectively. Furthermore, regarding the case where the distance is equal to the first threshold in the processing of S102, it can be handled as a case involving one of the two. Similarly, regarding the case where the distance is equal to the second threshold in the processing of S103, it can be handled as a case involving one of the two.
[0044] Technical effect
[0045] According to the information processing system 1 of the first embodiment, duplicate text data can be deleted from multiple text data registered in the knowledge base 30. Therefore, according to the information processing system 1, it is possible to suppress the registration of duplicate text data or to maintain both the text data before and after the update. Therefore, according to the information processing system 1, the retrieval accuracy of the knowledge base 30 can be improved. In addition, the utilization cost of the storage device constituting the knowledge base 30 can be reduced.
[0046] Furthermore, in the information processing system 1 of the first embodiment, if the distance between the first feature vector and the second feature vector is greater than a first threshold and less than a second threshold, the first text data and the second text data are correlated. During retrieval in the knowledge base 30, the correlated text data can be treated as a set of text data.
[0047] Implementation Method 2
[0048] Reference Figure 1 , Figure 2 and Figure 4 The second embodiment of the information processing system will now be described. In the second embodiment, except for a slight difference in the operation of the information processing device 10, it is the same as the first embodiment described above. Therefore, descriptions that are repeated in the first embodiment will be appropriately omitted.
[0049] The information processing apparatus 10 of the second embodiment determines whether to register new text data into the knowledge base 30 when it is to do so. The arithmetic unit 11 of the information processing apparatus 10 includes a calculation unit 111, a determination unit 112, and a control unit 113 for performing this determination.
[0050] Reference Figure 4 The operation of the information processing apparatus 10 in the second embodiment will be explained using a flowchart. Figure 4 In the process, the computing unit 111 of the information processing device 10 calculates the distance in the feature space between the third feature vector related to the new text data (i.e., the text data newly registered in the knowledge base 30, hereinafter appropriately referred to as "the third text data") and the fourth feature vector related to the fourth text data registered in the knowledge base 30 (S101).
[0051] The determination unit 112 of the information processing device 10 determines whether the distance calculated in the processing of S101 is less than a first threshold (S102). If the distance is determined to be less than the first threshold in the processing of S102 (S102: "Yes"), the control unit 113 of the information processing device 10 deletes one of the third text data and the fourth text data (S104). That is, the control unit 113 may not register the third text data in the knowledge base 30 but maintain the registration of the fourth text data (in this case, the third text data may be deleted). Alternatively, the control unit 113 may register the third text data in the knowledge base 30 and delete the fourth text data.
[0052] For example, control unit 113 can delete one of the third text data and the fourth text data based on at least one of the update date and time and version information. In this case, control unit 113 can delete the text data with the earlier update date and time from the third text data and the fourth text data. Control unit 113 can delete the text data with the earlier version indicated by the version information from the third text data and the fourth text data.
[0053] If the distance is determined to be greater than the first threshold in the processing of S102 (S102: "No"), the determination unit 112 determines whether the distance is less than the second threshold (S103). If the distance is determined to be less than the second threshold in the processing of S103 (i.e., the first threshold < distance < the second threshold) (S103: "Yes"), the control unit 113 associates the third text data with the fourth text data and registers them in the knowledge base 30 (S201).
[0054] If the distance is determined to be greater than the second threshold in the processing of S103 (S103: "No"), the control unit 113 registers the third text data into the knowledge base 30 (S202).
[0055] Technical effect
[0056] According to the information processing system 1 of the second embodiment, it is possible to suppress the registration of multiple text data with the same or nearly identical content, or the registration of text data before and after the update. Therefore, according to the information processing system 1, the retrieval accuracy of the knowledge base 30 can be improved. In addition, the utilization cost of the storage device constituting the knowledge base 30 can be reduced.
[0057] Furthermore, in the information processing system 1 of the second embodiment, if the distance between the third feature vector and the fourth feature vector is greater than a first threshold and less than a second threshold, the third text data and the fourth text data are correlated. During retrieval in the knowledge base 30, the correlated text data can be treated as a set of text data.
[0058] Variations
[0059] Alternatively, multiple feature vectors of multiple text data registered in the knowledge base 30 can be used to cluster the multiple text data in the feature space. For example, regarding the cluster to which the text data included in the search results in the knowledge base 30 belongs, the frequency of text data belonging to the cluster included in the search results can be recorded. Even if the distance between the feature vector related to the newly registered text data (equivalent to the third text data mentioned above) and the feature vector related to the text data registered in the knowledge base 30 (equivalent to the fourth text data mentioned above) is less than a first threshold, if the newly registered text data belongs to a cluster with higher frequency, the control unit 113 can also register the newly registered text data in the knowledge base 30.
[0060] The following describes various embodiments and variations of the invention derived from the implementation methods and modifications described above.
[0061] One embodiment of the invention provides an information processing system comprising a calculation unit for calculating the distance in a feature space between a first feature vector related to first text data registered in a database and a second feature vector related to second text data registered in the database; a determination unit for determining whether the calculated distance is less than the first threshold; and a control unit for deleting one of the first text data and the second text data if the calculated distance is less than the first threshold. In the above embodiment, "knowledge base 30" is an example of "database," "calculation unit 111" is an example of "calculation unit," "determination unit 112" is an example of "determination unit," and "control unit 113" is an example of "control unit."
[0062] In the information processing system described above, if the calculated distance is greater than the first threshold, the determination unit can determine whether the calculated distance is less than a second threshold, which is greater than the first threshold. If the calculated distance is less than the second threshold, the control unit can associate the first text data with the second text data.
[0063] Another aspect of the invention provides an information processing system comprising a calculation unit for calculating the distance in a feature space between a first feature vector related to first text data and a second feature vector related to second text data registered in a database, a determination unit for determining whether the calculated distance is less than a first threshold, and a control unit for either not registering the first text data in the database and maintaining the registration of the second text data, or registering the first text data in the database and deleting the second text data, if the calculated distance is less than the first threshold.
[0064] In the information processing system described above, if the calculated distance is greater than the first threshold, the determination unit can determine whether the calculated distance is less than a second threshold, which is greater than the first threshold. If the calculated distance is less than the second threshold, the control unit can associate the first text data with the second text data and register them in the database.
[0065] This invention is not limited to the embodiments described above. Appropriate modifications can be made without departing from the spirit or concept of the invention as understood from the claims and the entire specification. Information processing systems that accompany such modifications are also included within the scope of this invention.
Claims
1. An information processing system, comprising: The calculation unit calculates the distance in the feature space between a first feature vector related to a first text data registered in the database and a second feature vector related to a second text data registered in the database; The determination unit determines whether the calculated distance is less than a first threshold; and The control unit deletes either the first text data or the second text data if the calculated distance is less than the first threshold.
2. The information processing system according to claim 1, wherein, If the calculated distance is greater than the first threshold, the determination unit determines whether the calculated distance is less than a second threshold that is greater than the first threshold. If the calculated distance is less than the second threshold, the control unit associates the first text data with the second text data.
3. An information processing system, comprising: The calculation unit calculates the distance in the feature space between a first feature vector related to the first text data and a second feature vector related to the second text data registered in the database; The determination unit determines whether the calculated distance is less than a first threshold; and The control unit may, if the calculated distance is less than the first threshold, either not register the first text data in the database but maintain the registration of the second text data, or register the first text data in the database and delete the second text data.
4. The information processing system according to claim 3, wherein, If the calculated distance is greater than the first threshold, the determination unit determines whether the calculated distance is less than a second threshold that is greater than the first threshold. If the calculated distance is less than the second threshold, the control unit associates the first text data with the second text data and registers them in the database.