Information retrieval system, information retrieval method, information retrieval program, knowledge graph generation system, knowledge graph generation method, and knowledge graph generation program

By integrating syntactic relationships into knowledge graphs, the system accurately represents text logical structures, enhancing information retrieval through improved query understanding and answer generation.

JP2026087881AActive Publication Date: 2026-05-28燈株式会社
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
燈株式会社
Filing Date
2024-11-18
Publication Date
2026-05-28

AI Technical Summary

Technical Problem

Existing knowledge graphs struggle to accurately represent the logical structure of text, particularly in representing complex syntactic relationships between morphemes.

Method used

The system employs a hierarchical knowledge graph that incorporates syntactic relationships between morphemes, using syntactic analysis to create nested structures and represent dependency relationships, which are then used in conjunction with a large-scale language model to generate accurate answers to user queries.

Benefits of technology

This approach enables precise representation of text logical structures, improving the accuracy and relevance of information retrieval by leveraging syntactic information to enhance the understanding and generation of answers.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026087881000001_ABST
    Figure 2026087881000001_ABST
Patent Text Reader

Abstract

This system provides an information retrieval system that uses knowledge graphs to accurately represent the logical structure of text. [Solution] The information retrieval system of the present invention comprises: a receiving means for receiving input of a question sentence from a user terminal; a storage means for storing a knowledge graph including hierarchical syntactic relationships for each node, and a graph extraction means for extracting subgraphs from the knowledge graph that include nodes related to the question sentence; a prompt generation means for generating prompts to cause a generating AI to generate an answer sentence corresponding to the question sentence by referring to the subgraph, based on the question sentence and the subgraph; an acquisition means for inputting the generated prompts to the generating AI and acquiring the answer sentence generated by the generating AI; and an output means for outputting the answer sentence acquired by the acquisition means to the user terminal.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to an information retrieval system, an information retrieval method, an information retrieval program, a knowledge graph generation system, a knowledge graph generation method, and a knowledge graph generation program.

Background Art

[0002] As the background art in this technical field, there is Japanese Patent Application Laid-Open No. 2015-212926 (Patent Document 1). This publication describes "obtaining a search term input from a client, determining the type of the search term, obtaining a knowledge graph corresponding to the type of the search term, and returning it to the client" (see the abstract).

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] In the above Patent Document 1, sufficient improvement has not been made on the nature of the knowledge graph that it is difficult to accurately represent the logical structure of the text. Therefore, the present invention provides an information retrieval system using a knowledge graph that accurately represents the logical structure of the text.

Means for Solving the Problems

[0005] In order to solve the above problems, for example, the configuration described in the claims is adopted.

Effects of the Invention

[0006] According to the present invention, an information retrieval system using a knowledge graph that accurately represents the logical structure of the text is provided. Other issues, configurations, and effects not mentioned above will be clarified by the following description of the embodiments. [Brief explanation of the drawing]

[0007] [Figure 1] Figure 1 shows an example of a diagram illustrating the configuration of an information retrieval system. [Figure 2] Figure 2 shows an example of the hardware configuration of a knowledge graph management server. [Figure 3] Figure 3 shows an example of the various types of information stored in the auxiliary storage device of the knowledge graph management server. [Figure 4] Figure 4 shows an example of the hardware configuration of a search server. [Figure 5] Figure 5 shows an example of the various types of information stored in the auxiliary storage device of the search server. [Figure 6] Figure 6 shows an example of the hardware configuration of an LLM server. [Figure 7] Figure 7 shows an example of the hardware configuration of a user terminal. [Figure 8] Figure 8 shows an example of a knowledge graph generation flow. [Figure 9] Figure 9 shows an example of an information retrieval flow. [Figure 10] Figure 10 shows an example of a subgraph extraction flow. [Figure 11] Figure 11 shows an example of the file upload function screen. [Figure 12] Figure 12 shows an example of the default data function screen. [Figure 13] Figure 13 shows an example of the screen for the question submission function. [Figure 14] Figure 14 shows an example of the screen for the original text display function. [Figure 15] Figure 15 shows an example of the combo folding function screen. [Figure 16] Figure 16 shows an example of the combo expansion function screen. [Figure 17] Figure 17 shows an example of the node highlighting function screen. [Modes for carrying out the invention]

[0008] (1) Outline of the Embodiment Figure 1 shows an example of the configuration of an information retrieval system 100 (hereinafter simply referred to as System 100). As shown in Figure 1, System 100 includes a knowledge graph management server 200 (hereinafter simply referred to as the management server 200) and a search server 400. The management server 200 and the search server 400 are connected to an LLM server 600 and multiple user terminals 700 via a network. The network can be wired or wireless, and each terminal can send and receive information via the network.

[0009] Each server and terminal in System 100 may be a mobile device such as a smartphone, tablet, mobile phone, or personal digital assistant (PDA), or a wearable device such as glasses, a wristwatch, or clothing. Alternatively, it may be a stationary or portable computer, or a server located in the cloud or on a network. Functionally, it may also be a VR (Virtual Reality) terminal, an AR (Augmented Reality) terminal, or an MR (Mixed Reality) terminal. Alternatively, it may be a combination of multiple such terminals. For example, a combination of one smartphone and one wearable device can logically function as a single terminal. Other types of information processing terminals may also be used.

[0010] Each server and terminal of the system 100 includes a processor that executes an operating system, applications, programs, etc., a main memory device such as a RAM (Random Access Memory), an auxiliary storage device such as an IC card, a hard disk drive, an SSD (Solid State Drive), a flash memory, etc., a communication control unit such as a network card, a wireless communication module, a mobile communication module, etc., an input device such as a touch panel, a keyboard, a mouse, a voice input, a camera unit, etc., and an output device such as a monitor, a display, etc. Note that the output device may be a device or a terminal that transmits information for output to an external monitor, display, printer, device, etc.

[0011] Various programs, applications, etc. (also referred to as modules or processing units) are stored in the main memory device, and each functional element of the entire system 100 is realized by the processor executing these programs and applications. Note that these modules (processing units) may be implemented in hardware by integration or the like. Also, each module may be an independent program or application, or may be implemented in the form of some sub-programs or functions in one integrated program or application.

[0012] In this specification, each module is described as the subject (subject) that performs processing, but in reality, the processor that processes various programs, applications, etc. (modules) executes the processing. Various databases (DBs) are stored in the auxiliary storage device. A "database" is a functional element (storage unit) that stores a data set so as to be able to respond to any data operation (e.g., extraction, addition, deletion, overwrite, etc.) from a processor or an external computer. The implementation method of the database is not limited, and for example, it may be a database management system, a spreadsheet software, or a text file such as XML or JSON.

[0013] System 100 has an information retrieval function that allows users to search for desired information by outputting answer sentences to user questions using knowledge graphs stored in the management server 200. In System 100, in response to a user question, the search server 400 selects an appropriate knowledge graph from the knowledge graphs stored in the management server 200. The search server 400 further extracts a subgraph from the selected knowledge graph that contains information related to the question. The search server 400 then inputs the question sentence and the subgraph into the LLM server 600. The LLM server 600 uses a generative AI, which is a large-scale language model (LLM), to create an answer sentence to the question sentence by referring to the subgraph and returns it to the search server 400. The search server 400 outputs the retrieved answer sentence to the user terminal 700.

[0014] Furthermore, the knowledge graph used in system 100 includes hierarchical syntactic relationships for each node. That is, while conventional knowledge graphs represent the connections between entities that constitute a text, the knowledge graph of the present invention is further represented with a hierarchical structure by syntactic relationships for each morpheme obtained through syntactic analysis of sentences. Such a hierarchical structure is identified as syntactic information 223 (see Figure 3), which will be described later.

[0015] More specifically, for example, a specific sentence S composed of morphemes A, B, C, D, ... can be represented as a nested structure, such as S=(A, [B, C, D, ...]), based on these syntax trees. Such nested structures can also be represented recursively across multiple levels depending on the sentence's syntax. In this invention, we attempt to accurately represent complex logical structures that conventional knowledge graphs have struggled with by using syntactic information 223 (see Figure 3), described later, to represent syntactic relationships, which are the dependency relationships between morphemes that make up a sentence, as a hierarchical structure. The dependency relationships between morphemes refer to the relationships between each morpheme based on their role in a Japanese sentence, such as "subject, predicate, object" or "modifier, modified word." The details of the configuration and processing of this system 100 will be explained in order below.

[0016] (2) Configuration of the management server 200 Figure 2 shows an example of the hardware configuration of the management server 200. The management server 200 consists of servers located, for example, on the cloud. The management server 200 mainly performs the following functions. • Function to generate and store knowledge graphs • A function that provides a stored knowledge graph in response to a request from search server 400.

[0017] As shown in Figure 2, the main memory 201 stores programs and applications such as the knowledge acquisition module 211, morphological analysis module 212, syntactic analysis module 213, vector conversion module 214, graph generation module 215, and output module 216. The processor 203 executes these programs and applications to realize each functional element of the management server 200.

[0018] (Knowledge Acquisition Module 211) The knowledge acquisition module 211 acquires knowledge documents composed of text data. A knowledge document is document information containing arbitrary information held by a knowledge graph. The knowledge acquisition module 211 is an example of a knowledge acquisition means in the present invention.

[0019] (Morphological analysis module 212) The morphological analysis module 212 performs morphological analysis on the text data contained in the knowledge document, segments it into sentences, and then extracts the morphemes that make up the sentences. The morphological analysis module 212 tags the extracted morphemes with part-of-speech tags. The morphological analysis module 212 may perform morphological analysis using a general-purpose natural language processing model. The morphological analysis module 212 is an example of a morphological analysis means in the present invention.

[0020] (Syntax analysis module 213) The parsing module 213 performs parsing for each sentence segmented by the morphological parsing module 212. The parsing module 213 analyzes the hierarchical syntactic relationships of each morpheme based on the syntactic structure of the strings contained in the sentence. Details of the syntactic relationships will be described later. The parsing module 213 may perform parsing using a general-purpose parsing model. The parsing module 213 is an example of a parsing means in the present invention.

[0021] (Vector transformation module 214) The vector transformation module 214 performs vector transformations on proper nouns. The vector transformation module 214 uses, for example, an open-source vector transformation model to transform proper nouns into vectors.

[0022] (Graph generation module 215) The graph generation module 215 generates a hierarchical knowledge graph based on the processing results of the morphological analysis module 212 and the syntactic analysis module 213, according to nested information that indicates the syntactic relationships of each morpheme. Details of the nested information will be described later. The graph generation module 215 is an example of a graph generation means in the present invention.

[0023] (Output module 216) The output module 216 outputs information related to the knowledge graph information 225 to the search server 400 in response to a request from the search server 400. It also outputs information related to the knowledge graph information 225 to the user terminal 700 in response to a request from the user terminal 700.

[0024] As shown in Figure 2, the auxiliary storage device 202 stores information such as knowledge information 221, morphological information 222, syntactic information 223, vector information 224, and knowledge graph information 225. Other information may also be stored in the auxiliary storage device 202. The auxiliary storage device 202 is an example of a storage means in the present invention.

[0025] (3) Various information stored in the management server 200 Figure 3 shows an example of the various types of information stored in the auxiliary storage device 202 of the management server 200. Note that this figure only illustrates one example of the data structure for the various types of information; substantially equivalent information may be represented using other data structures. The contents of each of these types of information will be explained in order below.

[0026] <Knowledge information 221> First, let's explain knowledge information 221. Knowledge information 221 mainly consists of information about knowledge documents. In the example shown, the document table is stored as knowledge information 221.

[0027] (Document Table) The document table associates a unique identifier, the document ID, with information such as the title, user ID, content, and registration date and time. The title refers to the name of the knowledge document, which corresponds to the document ID. For example, it would be the document name of the knowledge document, such as "Standard Specifications for XX Construction." The User ID refers to the identifier of the user who manages the knowledge document, which is equivalent to the Document ID.

[0028] The content refers to the text data that constitutes the content of the knowledge document, which corresponds to the document ID. In other words, it refers to all the document information contained within the document. The registration date and time refers to the date and time information when a series of records corresponding to the document ID were registered in the document table. Note that the document table may also have other columns.

[0029] <Morpheme information 222> Next, we will explain morphological information 222. Morphological information 222 consists of various types of information obtained when morphological analysis is performed on text data contained in knowledge documents. In the example shown, the sentence table, morphological table, and proper noun table are stored as morphological information 222.

[0030] (Sentence Table) The sentence table holds information about sentences obtained through morphological analysis. Each sentence in the sentence table is associated with a unique identifier, the sentence ID, along with the document ID, text, sentence location, registration date, and other relevant information.

[0031] The document ID refers to the identifier of the knowledge document that contained the sentence (text) corresponding to the sentence ID. The text refers to the text data contained within the sentence corresponding to the sentence ID.

[0032] The position of a sentence refers to the text data that constitutes the content of the sentence corresponding to the sentence ID. In other words, it refers to document information equivalent to a single sentence. The registration date and time refers to the date and time information registered in the sentence table for a series of records corresponding to the sentence ID. Note that the sentence table may also have other columns.

[0033] (Morphological table) The morphological table holds information about morphemes (tokens) obtained through morphological analysis. The morphological table associates a unique identifier, the token ID, with the sentence ID, string, string base form, part-of-speech ID, phonetic reading, morphological position, registration date and time, and other relevant information.

[0034] The sentence ID refers to the identifier of the sentence that contained the morpheme corresponding to the morpheme ID. The string refers to the string that corresponds to the morpheme, which is equivalent to the morpheme ID. The original string refers to the word or phrase that serves as the original form of the morpheme corresponding to the morpheme ID.

[0035] The part-of-speech ID refers to the identifier of the part of speech of a morpheme, which is equivalent to the morpheme ID. The reading refers to the phonetic transcription of the morpheme corresponding to the morpheme ID. The position of a morpheme refers to the position within a sentence of the morpheme corresponding to its morpheme ID.

[0036] The registration date and time refers to the date and time information when a series of records corresponding to the morphological ID were registered in the morphological table. The morphological table may also include other columns.

[0037] (Part of speech label table) Here, we will explain the part-of-speech label table used for identifying parts of speech. In the part-of-speech label table, the part of speech, the content of the part of speech, etc., are associated with a unique identifier called the part-of-speech ID. Parts of speech refer to the names of parts of speech that correspond to part-of-speech IDs. Examples include "common nouns," "proper nouns," "verbs," and "adjectives." The part-of-speech description refers to the description of the part of speech (its role in the text) that corresponds to the part-of-speech ID.

[0038] (Proper Noun Table) The proper noun table holds information about proper nouns obtained from morphological analysis. Each proper noun ID, a unique identifier, is associated with a token ID, type, registration date, and other information.

[0039] The token ID refers to a morphological identifier that corresponds to a proper noun, which is equivalent to a proper noun ID. The "type" refers to the category of the proper noun, which corresponds to the proper noun ID. Examples of types include personal names, place names, store names, facility names, and school names. The registration date and time refers to the date and time information for the series of records corresponding to the proper noun ID that were registered in the proper noun table. The proper noun table may also include other columns.

[0040] <Syntax Information 223> Next, we will explain syntactic information 223. Syntactic information 223 consists mainly of various pieces of information obtained through syntactic analysis of sentences. In the example shown, syntactic information 223 includes a syntactic relationship table, a syntactic tree table, and a dependency syntactic tree table.

[0041] (Syntax Relationship Table) The syntactic relationship table holds information about the dependency relationships of syntax obtained through syntactic analysis. This information about syntactic relationships is an example of nested information in this invention. The syntactic relationship table associates a unique identifier, the relationship ID, with the sentence ID, the main word token ID, the token IDs of dependent morphemes, the type of syntactic relationship, the dependency label, the registration date and time, and so on.

[0042] The Sentence ID refers to the identifier of the sentence (the sentence that was the subject of the syntactic analysis) that has a relationship equivalent to the Relationship ID. The token ID of the main word refers to the identifier of the morpheme of the main word in the syntactic relationship, which corresponds to the relation ID. The main word, in a hierarchical syntactic relationship, refers to a word or phrase that plays a central role in forming the higher levels of the hierarchy.

[0043] The token ID of a dependent morpheme refers to the identifier of the morpheme that depends on the head in a syntactic relationship that corresponds to a relation ID. The token ID for a syntactic relationship type refers to the syntactic relationship type, which corresponds to the relationship ID. A dependency label refers to the type of dependency in a syntactic relationship that corresponds to a relation ID.

[0044] The registration date and time refers to the date and time information registered in the syntactic relationship table for a series of records corresponding to the relationship ID. The syntactic relation table may also include other columns.

[0045] (Syntax tree table) The syntax tree table holds information about the syntax tree obtained through syntactic analysis. A syntax tree is a tree structure that hierarchically represents the dependency structure of a sentence, and it is information that describes how the morphemes in a sentence are related to each other. Information about the syntax tree is an example of nested information in this invention. The syntax tree table associates a unique identifier, the syntax tree ID, with the sentence ID, the syntax tree representation, the registration date and time, and other information.

[0046] The sentence ID refers to the identifier of the sentence that contains the syntax tree corresponding to the syntax tree ID. The syntax tree representation refers to the syntax tree representation that corresponds to the syntax tree ID.

[0047] The registration date and time refers to the date and time information when a series of records corresponding to the syntax tree ID were registered in the syntax tree table. Note that the syntax tree table may have other columns.

[0048] (Dependency Syntax Tree Table) The dependency syntax tree table holds information about dependency syntax trees obtained through syntactic analysis. A dependency syntax tree is a tree structure that hierarchically represents the structure of a sentence, and it contains information that shows how morphemes in a sentence depend on other words. Information about dependency syntax trees is an example of nested information in this invention. The dependency syntax tree table associates a unique identifier, the dependency syntax tree ID, with the sentence ID, the token ID of the sentence's root morpheme, the dependency syntax tree representation, and the registration date and time.

[0049] The sentence ID refers to the identifier of the sentence that contains the dependent syntax tree, which corresponds to the dependent syntax tree ID. The token ID of a sentence's root morpheme is the identifier of the sentence's root morpheme, equivalent to the sentence ID. A root morpheme refers to the central verb or predicate that forms the core of the entire sentence, and is a word or phrase that governs the meaning of the sentence, independent of any other morphemes. The dependency syntax tree representation refers to the dependency syntax tree representation that corresponds to the dependency syntax tree ID.

[0050] The registration date and time refers to the date and time information for the series of records corresponding to the dependency syntax tree ID that were registered in the dependency syntax tree table. Note that the dependency syntax tree table may have other columns.

[0051] <Vector Information 224> Next, we will explain the vector information 224. The vector information 224 consists of various types of information obtained mainly by converting proper nouns into vectors. In the example shown, the vector information 224 stores a vector table and a metadata table.

[0052] (Vector table) The vector table holds the vector transformation results obtained by converting proper nouns into vectors. Each vector ID, which is a unique identifier, is associated with the proper noun ID, vector representation, transformation model, registration date and time, and other relevant information.

[0053] A proper noun ID refers to an identifier for a proper noun, equivalent to a vector ID. A vector representation refers to the value of a vector corresponding to a vector ID. For example, it may be represented as a value with 3072 dimensions.

[0054] The transformation model refers to the name of the vector transformation model used in the transformation process of the vector corresponding to the vector ID. The registration date and time refers to the date and time information when a series of records corresponding to the vector ID are registered in the vector table. Note that the vector table may also have other columns.

[0055] (Metadata table) The metadata table holds the metadata for the vectors used in similarity searches. The metadata table associates a unique identifier, the cluster ID, with the proper noun ID, the cluster's central vector, the cluster's label, the registration date and time, and other information.

[0056] The proper noun ID refers to the identifier of the proper noun in the metadata, which is equivalent to the cluster ID. The cluster center vector refers to the vector value that represents the center of the cluster, corresponding to the cluster ID.

[0057] The cluster label indicates the type of cluster, which corresponds to the cluster ID. Examples include clusters named after places of origin and clusters named after people. The registration date and time refers to the date and time information when a series of records corresponding to the cluster ID were registered in the metadata table. The metadata table may also contain other columns.

[0058] <Knowledge Graph Information 225> Next, we will explain the knowledge graph information 225. The knowledge graph information 225 is a network of knowledge that is represented in a graph structure by systematically linking the information (knowledge) mainly contained in knowledge documents. Specifically, it consists of nodes corresponding to each entity and edges that connect nodes to represent the relationships between them. In the illustrated example, the knowledge graph information 225 stores a node table, an edge table, and a node mapping table.

[0059] (Node table) The node table holds information about the nodes that make up the knowledge graph. Each node table associates a unique identifier, the node ID, with an entity label, node name, token ID, graph coordinates, description, registration date and time, and other information.

[0060] Entity labels refer to the type of entity represented by the node corresponding to the node ID. The type of entity represented by a node is, for example, the higher-level concept of the entity represented by the node. For example, "Place name" for "Tokyo" or "Construction material" for "Steel frame". The node name refers to the name of the entity (concept) represented by the node, which corresponds to the node ID.

[0061] The token ID refers to the identifier of the morpheme corresponding to the node that corresponds to the node ID. In other words, when a morpheme contained in a particular knowledge document constitutes a node, the token ID of that morpheme is associated with the node ID. Graph coordinates refer to the position coordinates in virtual space of a node corresponding to a node ID when it is rendered as a knowledge graph. The description refers to a description of the content of the node corresponding to the node ID. The description includes attributes, etc.

[0062] The registration date and time refers to the date and time information when a series of records corresponding to the node ID were registered in the node table. Note that the node table may also have other columns.

[0063] (Edge table) The edge table holds information about the edges that make up the knowledge graph. In the edge table, each edge ID, which is a unique identifier, is associated with the origin node ID, destination node ID, relationship type, relationship strength, registration date and time, and other details.

[0064] The starting node ID refers to the identifier of the node that is the starting point of the edge, which corresponds to the edge ID. The destination node ID refers to the identifier of the node that is the endpoint of the edge, which corresponds to the edge ID.

[0065] The relationship type refers to information indicating the relationship between two nodes connected by an edge corresponding to the edge ID. Relationship strength refers to information indicating the importance of the relationship between two nodes connected by an edge corresponding to the edge ID.

[0066] The registration date and time refers to the date and time information when a series of records corresponding to the edge ID were registered in the edge table. Note that the edge table may also have other columns.

[0067] (Node mapping table) The node mapping table holds information indicating which knowledge document each entity in the knowledge graph was extracted from and assigned to each node. The node mapping table associates a unique identifier, the node mapping ID, with the node ID, document ID, sentence ID, registration date and time, and other relevant information.

[0068] The node ID refers to the identifier of the node that was the target of node mapping (assignment), which corresponds to the node mapping ID. The Document ID refers to the identifier of the knowledge document that was the target of the node mapping, which corresponds to the Node Mapping ID.

[0069] The Sentence ID refers to the identifier of the sentence that was the target of the node mapping, which corresponds to the Node Mapping ID. The registration date and time refers to the date and time information when a series of records corresponding to the node mapping ID were registered in the node mapping table. Note that the node mapping table may also have other columns.

[0070] (4) Configuration of search server 400 Next, the configuration of the search server 400 will be described. Figure 4 shows an example of the hardware configuration of the search server 400. The search server 400 consists of servers located, for example, on the cloud. The search server 400 mainly provides the following functions. • A function that receives questions from the user's terminal and selects the corresponding knowledge graph. • A function to extract subgraphs related to the question from the selected knowledge graph. • Function to output subgraphs and question texts to the LLM server 600 and retrieve answer texts. • Function to output the acquired response text to the user's terminal.

[0071] As shown in Figure 4, the main memory 401 stores programs and applications such as the reception module 411, the subgraph extraction module 412, the prompt generation module 413, the response text acquisition module 414, and the output module 216. The processor 403 executes these programs and applications to realize each functional element of the search server 400.

[0072] (Reception module 411) The reception module 411 receives input of a question from the user terminal 700. The reception module 411 is an example of a reception means in the present invention.

[0073] (Subgraph extraction module 412) The subgraph extraction module 412 refers to the auxiliary storage device 202 of the management server 200, which stores the knowledge graph, and extracts the region containing nodes related to the question text from the knowledge graph corresponding to the question text as a subgraph. Details of the subgraph extraction process will be described later. The subgraph extraction module 412 is an example of a graph extraction means in the present invention.

[0074] (Prompt generation module 413) The prompt generation module 413 generates prompts based on the question and subgraph, causing the AI ​​to generate an answer corresponding to the question by referring to the subgraph. The prompt generation module 413 is an example of a prompt generation means in the present invention.

[0075] (Answer text acquisition module 414) The response text acquisition module 414 inputs the generated prompt to the generating AI and acquires the response text generated by the generating AI. The response text acquisition module 414 is an example of a response text acquisition means in the present invention.

[0076] (Output module 415) The output module 415 outputs the response text acquired by the acquisition means to the user terminal 700. In addition, in response to a request from the user terminal 700, the output module 415 outputs the knowledge graph and subgraphs in a visualized state showing the hierarchical syntactic relationships for each node. The output module 415 is an example of the output means in the present invention.

[0077] As shown in Figure 4, the auxiliary storage device 402 stores information such as user information 421, question information 422, morphological information 423, vector information 425, subgraph information 426, prompt information 427, and answer information 428. Other information may also be stored in the auxiliary storage device 402.

[0078] (5) Various information stored in the search server 400 Figure 5 shows an example of the various types of information stored in the auxiliary storage device 402 of the search server 400. Note that this figure only illustrates one example of the data structure of the various types of information, and substantially equivalent information may be represented using other data structures. The contents of each of these types of information will be explained in order below. Note that data tables that share data items with the data table shown in Figure 3 will not be illustrated or explained.

[0079] <User Information 421> First, let's explain user information 421. User information 421 mainly consists of information about users who use system 100. In the example shown, the user table is stored as user information 421.

[0080] (User Table) The user table associates account information, address information, permission information, registration date and time, etc., with a unique identifier called the user ID. Account information refers to information about a user's account, which corresponds to the user ID. This information includes name, company name, affiliated organization, address, and job title. Address information refers to address information that allows communication with user terminal 700 used by the user corresponding to the user ID.

[0081] Permission information refers to information indicating the permissions of a user, corresponding to a user ID, within System 100. Permissions within System 100 primarily include administrator privileges granted to users who manage the maintenance and operation of System 100, and user privileges granted to users who utilize System 100.

[0082] The registration date and time refers to the date and time information when a series of records corresponding to the user ID were registered in the user table. The user table may also have other columns.

[0083] <Question Information 422> Next, we will explain question information 422. Question information 422 mainly consists of information about the question text entered by the user. In the example shown, the question table is stored as question information 422.

[0084] (Question Table) The question table holds information about the questions entered by users. Each question in the question table is linked to a unique identifier, the question ID, along with the user ID, question label, question text, registration date and time, and other relevant information.

[0085] The User ID refers to the identifier of the user who asked the question corresponding to the Question ID. The question label indicates the type of field to which the question, corresponding to the question ID, belongs. For example, if the question is an inquiry to confirm building codes, the question label would be "Building-related."

[0086] The question text refers to the text data of the question, which corresponds to the question ID. In other words, the string of the question entered by the user is stored as is.

[0087] The registration date and time refers to the date and time information when a series of records corresponding to the question ID were registered in the question table. The question table may also have other columns.

[0088] <Morphological information 423, and vector information 425> The morphological information 423 and vector information 425 have the same structure as the information shown in Figure 3, and their explanation is omitted. In other words, the management server 200 shown in Figures 2 and 3 stores the results of morphological analysis, vector transformation, and syntactic analysis performed on the knowledge document. On the other hand, the search server 400 shown in Figures 4 and 5 stores the results of morphological analysis, vector transformation, and syntactic analysis performed on the question sentence entered by the user.

[0089] <Subgraph Information 426> Next, we will explain subgraph information 426. Subgraph information 426 refers to a part of the knowledge graph generated by extracting the region containing the question statement and related nodes from the knowledge graph. In the illustrated example, a subgraph table that can identify the scope of the subgraph from the knowledge graph is stored as the subgraph. Note that, as in Figure 3, subgraph information 426 may also hold a node table, edge table, and node mapping table that constitute the subgraph.

[0090] (Subgraph Table) The subgraph table holds information that allows for the identification of the scope of a subgraph from the knowledge graph. In the subgraph table, a unique identifier, the subgraph ID, is associated with the question ID, node ID, edge ID, relationship ID, syntax tree ID, dependent syntax tree ID, registration date and time, and other information.

[0091] The question ID refers to the identifier of the subgraph and the corresponding question text, which corresponds to the subgraph ID. A node ID refers to the identifier of all nodes included in the subgraph corresponding to the subgraph ID. In other words, multiple node IDs are associated with a single subgraph ID. An edge ID refers to the identifier of all edges included in the subgraph corresponding to the subgraph ID. In other words, multiple edge IDs are associated with a subgraph ID.

[0092] The relationship ID refers to the relationship ID associated in the knowledge graph with the morphemes of nodes included in the subgraph, which corresponds to the subgraph ID. The syntax tree ID refers to the syntax tree ID associated in the knowledge graph with the morphemes of nodes contained in the subgraph corresponding to the subgraph ID. A dependency syntax tree ID refers to the dependency syntax tree ID associated in the knowledge graph with a morpheme of a node contained in a subgraph that corresponds to a subgraph ID.

[0093] The registration date and time refers to the date and time information when a series of records corresponding to the subgraph ID were registered in the subgraph table. Note that the subgraph table may also have other columns.

[0094] <Prompt Information 427> Next, we will explain prompt information 427. Prompt information 427 refers to information about prompts that the search server 400 prompts the LLM server 600 to create an answer corresponding to a question. In the illustrated example, the prompt table is stored as prompt information 427.

[0095] (Prompt table) The prompt table holds the information necessary for the generation AI to generate response sentences. In the prompt table, a unique identifier called a prompt ID is associated with the question ID, subgraph ID, response sentence creation command, registration date and time, and other information.

[0096] The Question ID refers to the identifier of the question text included in the prompt, which corresponds to the Prompt ID. The subgraph ID refers to the identifier of the subgraph that the generating AI should refer to for the answer to the question contained in the prompt, which corresponds to the prompt ID.

[0097] The response text creation command refers to the command information that instructs the generating AI included in the prompt, which corresponds to the prompt ID, to create a response text. The registration date and time refers to the date and time information registered in the prompt table for a series of records corresponding to the prompt ID. The prompt table may also have other columns.

[0098] <Answer information 428> Next, we will explain the answer information 428. Answer information 428 refers to the information that constitutes the answer to the question. In the example shown, the answer table is stored as answer information 428.

[0099] (Answer Table) The response table holds information about the responses generated by the AI. Each response ID, a unique identifier, is associated with a prompt ID, response text, registration date and time, and other relevant information.

[0100] The prompt ID refers to the identifier of the prompt that instructed the creation of the response text corresponding to the response ID. The answer text refers to the text data of the answer corresponding to the answer ID.

[0101] The registration date and time refers to the date and time information when a series of records corresponding to the response ID were registered in the response table. The response table may also include other columns.

[0102] (6) Configuration of LLM Server 600 Next, we will describe the configuration of the LLM server 600. Figure 6 shows an example of the hardware configuration of the LLM server 600. The LLM server 600 consists of one or more servers located, for example, on the cloud.

[0103] As shown in Figure 6, the main memory 601 of the LLM server 600 stores programs and applications such as the generation AI module 611. The processor 603 executes these programs and applications to realize each functional element of the LLM server 600.

[0104] Among the functional elements to be implemented, the generation AI module 611 is a deep learning model that has been pre-trained on a large dataset. In other words, this module is an LLM (i.e., a Large-Scale Language Model). This module outputs a response to an input prompt (in other words, an instruction). Because this module uses a deep learning model pre-trained on a large dataset, it can be used without training data or additional training.

[0105] (7) Configuration of user terminal 700 Next, the configuration of the user terminal 700 will be described. Figure 7 shows an example of the hardware configuration of the user terminal 700. The user terminal 700 is a terminal device such as a smartphone, tablet, notebook PC, or desktop PC.

[0106] As shown in Figure 7, the main memory 701 of the user terminal 700 stores programs and applications such as the information retrieval module 711, the server cooperation module 712, and the graph display module 713. The processor 703 executes these programs and applications to realize each functional element of the user terminal 700.

[0107] The information retrieval module 711 works in cooperation with the server integration module 712 to output a response to a question entered by the user. The server integration module 712 works in conjunction with other servers, such as the search server 400, to provide the functionality to retrieve answers to questions. The graph display module 713 provides the functionality to visualize and display knowledge graphs and subgraphs in response to user input. Specific display methods will be described later.

[0108] (8) Regarding the process of generating knowledge graphs Next, we will explain the knowledge graph generation process performed by the management server 200. Figure 8 shows an example of the knowledge graph generation flow 800. As shown in Figure 8, the management server 200 first acquires knowledge documents (step S810). Knowledge documents are entered by the administrator, for example, when generating a new knowledge graph. The knowledge acquisition module 211 of the management server 200 acquires the knowledge documents and stores them as knowledge information 221 in the auxiliary storage device 202. At this time, a new record is recorded in the document table.

[0109] Next, the management server 200 performs natural language processing (step S820). Specifically, the morphological analysis module 212 of the management server 200 performs morphological analysis on the knowledge document. The morphological analysis module 212 can perform morphological analysis using a morphological analysis model provided by an external server, for example, as open source. As a result, the text data of the knowledge document is segmented, and new records are recorded in the sentence table.

[0110] The morphological analysis module 212 further divides the text data that makes up the sentence into morphemes and records new records in the morphological table. At this time, it refers to the part-of-speech label table and assigns a part-of-speech label (part-of-speech ID) to each morpheme. The morphological analysis module 212 further records new records in the proper noun table for proper nouns.

[0111] Next, the management server 200 performs sentence-by-sentence parsing (step S830). Specifically, the parsing module 213 of the management server 200 refers to the sentence table and performs parsing for each stored sentence. In this case, the parsing module 213 can perform parsing using a parsing model provided by an external server, for example, as open source. As a result, the text data contained in the sentence is parsed, and new records are recorded in the syntactic relationship table, syntactic tree table, and dependent syntactic tree table, which constitute the syntactic information 223. Depending on the specifications of the parsing model, the morphological analysis and parsing described above may be performed simultaneously.

[0112] Next, the management server 200 embeds vectors into the proper nouns (step S840). Specifically, the vector transformation module 214 of the management server 200 refers to the proper noun table and performs vector transformations on the proper nouns. The vector transformation module 214 can perform vector transformations on proper nouns using a vector transformation model provided by an external server, for example, as open source. As a result, vector values ​​and metadata for the proper nouns are obtained, and new records are recorded in the vector table and metadata table that constitute the vector information 224.

[0113] Next, the management server 200 generates a knowledge graph (step S850). Specifically, the graph generation module 215 of the management server 200 generates a knowledge graph using the morphological information 222 and syntactic information 223 obtained from the series of processes. As a result, new records are recorded in the node table, edge table, and node mapping table that constitute the knowledge graph.

[0114] In this embodiment, syntactic information 223 is used in the generation of the knowledge graph. As a result, the nodes of the knowledge graph are linked hierarchically by syntactic dependencies, and a hierarchical knowledge graph is obtained.

[0115] Furthermore, the graph generation module 215 merges identical words from the nodes that make up the generated hierarchical knowledge graph, including those that are also present in the syntax tree obtained through syntactic analysis. This eliminates duplicate words and prevents word duplication. This completes the knowledge graph for the knowledge document. With this, knowledge graph generation flow 800 is finished.

[0116] (9) Information retrieval process Next, we will explain the information retrieval process performed by the search server 400. Figure 9 shows an example of the information retrieval flow 900. As shown in Figure 9, the search server 400 first receives a question from the user terminal 700 (step S910). Users of the system 100 perform searches for predetermined information stored in the knowledge graph, for example. The reception module 411 of the search server 400 receives the text data of the question entered into the user terminal 700 and records it as a new record in the question table that constitutes the question information 422.

[0117] Next, the search server 400 extracts subgraphs from the knowledge graph (step S920). Specifically, the subgraph extraction module 412 of the search server 400 extracts subgraphs related to the question text from the knowledge graph stored in the management server 200. The specific details of this process will be explained in detail using Figure 10.

[0118] Figure 10 shows an example of the subgraph extraction flow 1000. As shown in Figure 10, in the subgraph extraction process, the search server 400 obtains the question text (step S1021). Specifically, the subgraph extraction module 412 of the search server 400 refers to the question information 422 and obtains the question text.

[0119] Next, the search server 400 identifies the target knowledge graph (step S1022). Specifically, the subgraph extraction module 412 queries the management server 200 based on the question text and identifies and retrieves the knowledge graph corresponding to the question text from among the knowledge graphs stored in the management server 200. At this time, the subgraph extraction module 412 performs an undirected processing to remove the hierarchical syntactic relationships contained in the knowledge graph.

[0120] Next, the search server 400 performs morphological analysis on the question (step S1023). Specifically, the subgraph extraction module 412 performs morphological analysis on the question using a morphological analysis model provided as open source by an external server. This extracts proper nouns contained in the question. Alternatively, the analysis could be performed using an analysis model that performs syntactic and morphological analysis simultaneously, and only the results of the morphological analysis could be referenced.

[0121] Next, the search server 400 performs vector transformation on the proper nouns to obtain similar nodes (step S1024). Specifically, the subgraph extraction module 412 performs vector transformation using a vector transformation model provided by an external server, for example, as open source. As a result, new records are recorded in the vector table and metadata table that constitute the vector information 425 about the question sentence.

[0122] The subgraph extraction module 412 then uses the obtained vector information 425 to perform matching and similarity searches for proper nouns contained in the question against the nodes included in the knowledge graph. This retrieves nodes that are identical or similar to the proper nouns contained in the question. As a result, a new record is recorded for the node ID in the subgraph table that constitutes the subgraph.

[0123] Next, the search server 400 calculates the minimum spanning tree that includes all the acquired nodes (step S1025). Specifically, the subgraph extraction module 412 calculates the minimum spanning tree that includes all the nodes acquired in step S1025. Here, the minimum spanning tree refers to a tree structure in which the weight of the edges connecting all nodes is minimized. The weight of an edge refers to the strength of the relationship assigned to the edge. As a result, a new record is recorded for the edge ID in the subgraph table that constitutes the subgraph.

[0124] Next, the search server 400 incorporates the nested information contained in the minimum spanning tree into the subgraph (step S1026). Specifically, the subgraph extraction module 412 refers to the syntax information 223 stored in the management server 200 and obtains the nested information associated with the nodes within the calculated minimum spanning tree range. As a result, new records are recorded in the relationship ID, syntax tree ID, and dependent syntax tree ID in the subgraph table that constitutes the subgraph, and the subgraph is completed. With this, the subgraph extraction process (step S920) is completed, and the process moves to step S930 in Figure 9.

[0125] Next, as shown in Figure 9, the search server 400 generates a prompt to be input to the generating AI (step S930). Specifically, the prompt generation module 413 of the search server 400 refers to the question table and subgraph table to generate a prompt to be input to the LLM server 600 in order to cause the generating AI to generate an answer to the question. As a result, a new record is recorded in the prompt table that constitutes the prompt information 427.

[0126] Next, the search server 400 retrieves the response text generated by the generation AI (step S940). Specifically, the response text retrieval module 414 of the search server 400 inputs the prompt generated by the prompt generation module 413 to the LLM server 600 via the network.

[0127] Based on the input prompt, the LLM server 600 generates an answer to the question contained in the prompt by having the processor 603 execute the generation AI module 611. The LLM server 600 outputs the answer to the search server 400. The answer acquisition module 414 acquires the answer output from the LLM server 600. As a result, a new record is recorded in the answer table that constitutes the answer information 428.

[0128] Next, the search server 400 outputs the answer text to the user terminal 700 (step S950). Specifically, the output module 415 of the search server 400 outputs the answer text to the user terminal 700. The information retrieval module 711 of the user terminal 700 displays the answer text on the display, which is the output device 705. This allows the user to obtain the answer text to their question. With this, the information retrieval flow 900 is completed.

[0129] As described above, according to the system 100 of this embodiment, the management server 200 performs syntactic analysis to analyze the hierarchical syntactic relationships of each morpheme that will become a node when generating a knowledge graph from a knowledge document. The management server 200 then generates a knowledge graph with a hierarchical structure (hierarchical knowledge graph) according to nesting information that indicates the syntactic relationships of each morpheme. For this reason, the knowledge graph of this embodiment accurately represents the logical structure of the knowledge document, unlike conventional knowledge graphs.

[0130] In system 100, in response to a question input from the user terminal 700, the system extracts the necessary areas from the hierarchical knowledge graph as subgraphs and generates an answer using a generation AI. This compresses the amount of information in the subgraphs, reducing the processing load on the generation AI while still providing an accurate answer to the question. Thus, system 100 provides a system for information retrieval using a knowledge graph that accurately represents the logical structure of a text.

[0131] In other words, the hierarchical knowledge graph is constructed from morphological information 222, which includes the part of speech for each morpheme of the knowledge document, and syntactic information 223, which shows the hierarchical syntactic relationships for each morpheme. Therefore, unlike conventional knowledge graphs, by including the hierarchical syntactic relationships for each morpheme, it can be suitably used as a knowledge base for accumulating information such as various rules that require a rigorous understanding.

[0132] Furthermore, since the subgraph extraction module 412 of the search server 400 extracts subgraphs in a state where syntactic relationships included in the hierarchical knowledge graph have been removed, the searchability of the information by the generating AI can be ensured.

[0133] Furthermore, the subgraph extraction module 412 of the search server 400 extracts subgraphs by merging nodes related to the question text from the hierarchical knowledge graph. Therefore, by integrating identical merges included in the hierarchical knowledge graph, the amount of information in the subgraph can be compressed, reducing the load on subsequent processing.

[0134] Furthermore, the subgraph extraction module 412 of the search server 400 extracts proper nouns contained in the question text by parsing the string of the question text, and collects nodes in the knowledge graph that are identical or similar to the proper nouns. This enables similarity searches with proper nouns contained in the question text, and ensures accuracy in the range extracted as subgraphs from the hierarchical knowledge graph.

[0135] In other words, the hierarchical knowledge graph of the present invention is superior to conventional knowledge graphs in terms of cost and spade, and is particularly suitable for acquiring and retrieving complex logical structures. Information extraction, which was difficult with conventional knowledge graphs, can be performed with high accuracy by maintaining hierarchical syntactic relationships.

[0136] (10) Screen example Next, we will describe an example screen on the user terminal 700 in system 100. The graph display module 713 of the user terminal 700 visualizes and displays knowledge graphs and subgraphs on the user terminal 700. This allows the user to intuitively grasp the flow of analysis for a question and the structure of related nodes, making it easier to understand the structure of the entire hierarchical knowledge and its relationships. The display processing by such a graph display module 713 will be explained along with the functions associated with the graph display processing.

[0137] (10-1) File upload function Figure 11 shows an example of the file upload function screen. As shown in Figure 11, this screen allows you to upload a knowledge document file that has already undergone syntactic analysis using the "Select File" button in the upper left corner of the screen. This generates and visualizes a hierarchical knowledge graph. Specifically, by opening the storage of user terminal 700 via the upload button and uploading the knowledge document file that has undergone syntactic analysis, the graph can be displayed on the screen of user terminal 700. You can also zoom in and out using the icons. This function is particularly effective when comprehensively visualizing all entities contained in a new knowledge document that you want to analyze. Since the knowledge graph is generated based on the uploaded knowledge document, visual analysis of the data becomes easier.

[0138] (10-2) Default Data Function Figure 12 shows an example of the default data function screen. As shown in Figure 12, on this screen, clicking the "Show Default Data" button allows you to visualize the data from pre-registered knowledge document files as a knowledge graph. Specifically, clicking the "Show Default Data" button on the screen automatically loads the pre-registered knowledge document files and visualizes them as a hierarchical knowledge graph. By using this function, you can immediately check the functionality of System 100 and the usability of the visualized knowledge graph, even without uploading knowledge document files, as long as the knowledge document has been uploaded once.

[0139] (10-3) Question submission function Figure 13 shows an example of the screen for the question submission function. As shown in Figure 13, on this screen, when you submit a question using the question submission form in the upper right corner of the screen, a hierarchical knowledge graph that helps in creating an answer will be displayed. Specifically, you can enter and submit a question using the question submission form in the upper right corner of the screen. The submitted question is analyzed by the process described above, and keywords are automatically extracted. Based on the extracted keywords, highly relevant nodes or combos (groups of multiple nodes) in the knowledge graph are searched for, and the corresponding elements are highlighted. This visually highlights information related to the question on the graph, allowing you to quickly find the desired information from the entire graph.

[0140] (10-4) Original text display function Figure 14 shows an example of the screen for the original text display function. As shown in Figure 14, clicking the combo box on this screen displays the original sentence data before syntactic analysis was applied. This facilitates understanding the context and original meaning of the information visually represented on the knowledge graph. For example, even if the content of the knowledge graph alone is difficult to understand, viewing the original text can help the user interpret the information.

[0141] (10-5) Combo folding function Figure 15 shows an example of the combo folding function screen. As shown in Figure 15, on this screen, clicking the minus button displayed in a combo box will close that combo box. When closed, the number of nodes and combos contained in that combo box will be displayed. When there are many nodes in a combo box, it becomes difficult to grasp the entire graph at a glance. Therefore, this function simplifies the graph by collapsing the combo box when the minus button is clicked, and by displaying the number of nodes and combos contained within it, it facilitates understanding the overall structure.

[0142] (10-6) Combo Expansion Function Figure 16 shows an example of the combo expansion function screen. As shown in Figure 16, this screen allows you to expand collapsed combos. Specifically, clicking the plus button displayed in a collapsed combo expands the entities that make up the combo, displaying the nodes and subcombos included in that combo. This is useful when you want to focus on a specific area and examine the details. This feature allows you to efficiently explore the knowledge graph from the overall picture to the details.

[0143] (10-7) Node highlighting function Figure 17 shows an example of the node highlighting function screen. As shown in Figure 17, on this screen, clicking a node highlights it, and its size remains fixed even when zooming out. In the example shown, the two nodes "Very Effective" and "Effective" are highlighted because they were selected. It is also possible to highlight the combos and related nodes to which the node belongs. Highlighted nodes have a fixed size and do not get lost when zooming in or out, and the combos and nodes associated with them are also highlighted, making it easier to visually track the relationships between specific pieces of information.

[0144] Thus, by visualizing the knowledge graph and subgraphs on the user terminal 700, the visualization and operability of the complex, layered hierarchical knowledge graph are improved, resulting in the following various benefits.

[0145] 1) The advantage of being able to visualize the information retrieval process using a hierarchical knowledge graph. In other words, because it is possible to visually confirm which nodes or combos the answer to a question was extracted from, the flow of analysis from question to answer becomes easier to understand. This improves the transparency of the information retrieval process using hierarchical knowledge graphs and enhances the reliability of the answer results.

[0146] 2) Benefits of enabling efficient data exploration In other words, subgraphs are displayed according to a hierarchical structure, making it possible to smoothly navigate from the overall structure to specific information. Furthermore, by expanding and collapsing nodes and combos, users can narrow down the scope of the information they need, thus increasing the efficiency of information retrieval.

[0147] 3) The benefit of making it easier to understand the context of the information. In other words, clicking on a node or combo box displays the original text and detailed information associated with that node. This allows you to simultaneously view the hierarchical structure and the information from the original text, enabling you to proceed with analysis while gaining a deeper understanding of the meaning of the entire data.

[0148] 4) The benefit of making it easier to understand the relationships between nodes. In other words, related nodes and combos linked to nodes and combos by edges are highlighted, making the interrelationships and dependencies between pieces of information visually easier to understand. This makes it easier to understand the flow and connections of information within the data.

[0149] 5) Benefits of achieving flexible operability through user interaction In other words, users can intuitively manipulate the graph directly by clicking on nodes and combos, and moving them by zooming and dragging. Because the viewpoint can be freely shifted and the hierarchical structure can be zoomed in and out, users can view both the overall picture and detailed information in a balanced way, enabling smooth visual information manipulation.

[0150] (11) Variant Next, a modified example of system 100 will be described. In the embodiment described above, the subgraph extraction module 412 of the search server 400 performed an undirected processing to remove hierarchical syntactic relationships from the hierarchical knowledge graph, but this is not limited to this. In other words, the subgraph extraction module 412 may retain the syntactic relationships between nodes included in the hierarchical knowledge graph as they are. In this case, the prompt generation module 413 generates a prompt including syntactic information 223 that indicates the syntactic relationships included in the subgraph. This makes it possible for the generating AI to generate response sentences that take into account the syntactic relationships between nodes included in the subgraph, even if undirected processing is not performed in the extraction of the subgraph.

[0151] Furthermore, knowledge documents can also use information where the text itself has a clear hierarchical relationship, such as articles of law or statutes. In this case, the structure of the document itself can become an element that indicates a meaningful hierarchical structure for the hierarchical knowledge graph. By representing such a hierarchical structure directly on the knowledge graph, it becomes possible to visualize the logical connections and hierarchical relationships between sentences. In other words, it becomes possible to represent not only the meaning of each sentence, but also the hierarchical relationships determined by the positional relationships between sentences, as a knowledge graph.

[0152] Furthermore, by visualizing this hierarchical structure on the user terminal 700, the logical flow of the entire legal text, which constitutes a knowledge document, and the relationships between chapters and sections can be grasped more intuitively. This is expected to support the analysis and understanding of complex texts, such as in legal learning and review. This will enable the analysis of data with deeper meaning and context, and it is anticipated that the scope of application of hierarchical knowledge graphs will expand from business domains to learning and research domains.

[0153] Furthermore, in addition to the information retrieval process using the hierarchical knowledge graph described above, system 100 may also perform information retrieval processing using vector search. In the vector search-based information retrieval process, a vector search is performed on the knowledge information 221 using the question text, and reference information with a high similarity to the question text is extracted from the knowledge information 221. Then, the prompt generation module 413 generates a prompt containing the extracted reference information and the question text, and inputs it to the LLM server 600. On the LLM server, the generation AI generates an answer text to the question text based on the reference information.

[0154] When vector-based information retrieval processing is used in conjunction with information retrieval processing using a hierarchical knowledge graph, the vector-based information retrieval process performs comprehensive information retrieval of the knowledge information. Then, the information retrieval process using the hierarchical knowledge graph can perform information retrieval that requires interpretation of specialized terminology, resulting in complementary and high search performance.

[0155] (12) Others It should be noted that the present invention is not limited to the embodiments described above, and various modifications are included. For example, the embodiments described above are described in detail to make the present invention easier to understand, and are not necessarily limited to those having all the configurations described. Furthermore, it is possible to replace parts of the configuration of one embodiment with the configuration of another embodiment, and it is also possible to add configurations from other embodiments to the configuration of one embodiment. In addition, it is possible to add, delete, or replace parts of the configuration of each embodiment with other configurations.

[0156] Furthermore, each of the above configurations, functions, processing units, and processing means may be implemented in hardware, either partially or entirely, by designing them as integrated circuits, for example. Alternatively, each of the above configurations and functions may be implemented in software by having the processor interpret and execute programs that implement each function. Information such as programs, tables, and files that implement each function can be stored in memory, a recording device such as a hard disk or SSD (Solid State Drive), or a recording medium such as an IC card, SD card, or DVD.

[0157] Furthermore, the control lines and information lines shown are those deemed necessary for explanatory purposes, and not all control lines and information lines are necessarily shown in the actual product. In reality, it is safe to assume that almost all components are interconnected. Furthermore, the above-described embodiments disclose at least the configuration described in the claims. [Explanation of Symbols]

[0158] 100…Information Retrieval System, 200…Knowledge Graph Management Server, 201…Main Memory, 211…Knowledge Acquisition Module, 212…Morphological Analysis Module, 213…Syntax Analysis Module, 214…Vector Conversion Module, 215…Graph Generation Module, 216…Output Module, 202…Auxiliary Memory, 221…Knowledge Information, 222…Morphological Information, 223…Syntax Information, 224…Vector Information, 225…Knowledge Graph Information, 400…Search Server 401...Main memory, 411...Reception module, 412...Subgraph extraction module, 413...Prompt generation module, 414...Answer text acquisition module, 415...Output module, 402...Auxiliary memory, 421...User information, 422...Question information, 423...Morphological information, 424...Syntax information, 425...Vector information, 426...Subgraph, 427...Prompt information, 428...Answer information, 600...LLM server, 700...User terminal

Claims

1. A means of receiving input of a question from a user terminal, A graph extraction means that refers to a storage means that stores a knowledge graph containing hierarchical syntactic relationships for each node, and extracts a region containing nodes related to the question sentence from the knowledge graph as a subgraph, A prompt generation means generates a prompt for the AI ​​to generate an answer sentence corresponding to the question sentence by referring to the subgraph, based on the question sentence and the subgraph. A response text acquisition means that inputs the generated prompt to the generating AI and obtains the response text generated by the generating AI, An information retrieval system comprising: an output means for outputting the response text acquired by the acquisition means to the user terminal.

2. The aforementioned knowledge graph is, The information retrieval system according to claim 1, comprising: morphological information including the part of speech for each morpheme constituting the string classified by morphological analysis of the string of learning text data; and nested information indicating the hierarchical syntactic relationships for each morpheme based on the syntactic structure of the string analyzed by syntactic analysis of the string.

3. The graph extraction means is The information retrieval system according to claim 2, which extracts the subgraphs as a state in which the hierarchical syntactic relationships contained in the knowledge graph have been removed.

4. The prompt generation means is The information retrieval system according to claim 2, which generates the prompt including the nested information contained in the subgraph.

5. The graph extraction means is The information retrieval system according to claim 3 or 4, wherein the subgraph is extracted by merging the nodes related to the question text from the knowledge graph.

6. The graph extraction means is By parsing the string of the aforementioned question, proper nouns contained in the question are extracted. The information retrieval system according to claim 5, which collects nodes that are identical or similar to the proper nouns among the nodes included in the knowledge graph.

7. The graph extraction means is A minimum spanning tree is calculated that includes all of the collected nodes. The information retrieval system according to claim 6, wherein the calculated minimum spanning tree is extracted as the subgraph.

8. The output means is The information retrieval system according to claim 2, which, in response to a request from the user terminal, outputs the subgraph in a state in which the hierarchical syntactic relationships of each node are visualized.

9. A computer processor A reception step that accepts the input of a question from the user terminal, A graph extraction step involves referring to a storage means that stores a knowledge graph containing hierarchical syntactic relationships for each node, and extracting a region containing nodes related to the question statement from the knowledge graph as a subgraph. A prompt generation step that generates a prompt for the AI ​​to generate an answer sentence corresponding to the question sentence by referring to the subgraph, based on the question sentence and the subgraph, The acquisition step involves inputting the generated prompt into the generating AI and obtaining the response text generated by the generating AI, An information retrieval method that performs an output step of outputting the response text obtained in the acquisition step to the user terminal.

10. In a computer processor, A reception step that accepts the input of a question from the user terminal, A graph extraction step involves referring to a storage means that stores a knowledge graph containing hierarchical syntactic relationships for each node, and extracting a region containing nodes related to the question statement from the knowledge graph as a subgraph. A prompt generation step that generates a prompt for the AI ​​to generate an answer sentence corresponding to the question sentence by referring to the subgraph, based on the question sentence and the subgraph, The acquisition step involves inputting the generated prompt into the generating AI and obtaining the response text generated by the generating AI, An information retrieval program that performs an output step of outputting the response text obtained in the acquisition step to the user terminal.

11. A knowledge acquisition method for obtaining knowledge documents composed of text data, Morphological analysis means for performing morphological analysis on the aforementioned text data and segmenting it, A syntactic analysis means that performs syntactic analysis on each segmented sentence and analyzes the hierarchical syntactic relationships of each morpheme based on the syntactic structure of the string of the text data, The system includes a graph generation means that generates a hierarchical knowledge graph according to nested information indicating the syntactic relationships for each morpheme, The graph generation means is a knowledge graph generation system that merges the same words from among the nodes constituting the generated hierarchical knowledge graph that are included in the syntax tree obtained by the syntactic analysis.

12. A computer processor A knowledge acquisition step to obtain a knowledge document consisting of text data, A morphological analysis step in which morphological analysis is performed on the aforementioned text data and segmented, A syntactic analysis step which involves performing syntactic analysis on each segmented sentence and analyzing the hierarchical syntactic relationships of each morpheme based on the syntactic structure of the string of the text data, A graph generation step is performed to generate a hierarchical knowledge graph according to nested information indicating the syntactic relationships for each morpheme, A knowledge graph generation method comprising the graph generation step, in which the same words included in the syntax tree obtained by the syntactic analysis are merged among the nodes constituting the generated hierarchical knowledge graph.

13. In a computer processor, A knowledge acquisition step to obtain a knowledge document consisting of text data, A morphological analysis step in which morphological analysis is performed on the aforementioned text data and segmented, A syntactic analysis step which involves performing syntactic analysis on each segmented sentence and analyzing the hierarchical syntactic relationships of each morpheme based on the syntactic structure of the string of the text data, A graph generation step is performed to generate a hierarchical knowledge graph according to nested information indicating the syntactic relationships for each morpheme. The graph generation step involves a knowledge graph generation program that merges the same words from the nodes constituting the generated hierarchical knowledge graph that are also included in the syntax tree obtained by the syntactic analysis.

Citation Information

Patent Citations

  • Searching method and searching apparatus

    JP2015212926A