Methods, devices, equipment, and media for extracting engineering information from EPC projects.

By leveraging technologies such as Facebook's AI-powered similarity search FAISS index and cross-encoder, the accuracy and efficiency issues of information extraction in EPC projects have been resolved, enabling efficient extraction of relevant information from complex engineering documents.

CN120849603BActive Publication Date: 2026-01-06ZHEJIANG PROVINCE INST OF ARCHITECTURAL DESIGN & RES
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202511358371.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-09-23
Publication Date
2026-01-06
Estimated Expiration
2045-09-23

AI Technical Summary

Technical Problem

In EPC projects, existing technologies are unable to effectively extract accurate engineering information from complex and diverse engineering documents.

Method used

By using Facebook's AI-powered similarity search FAISS index and user requirements, candidate text paragraphs are filtered from EPC project files through multi-level matching, and information is extracted from target text paragraphs using techniques such as cross encoders and regular expressions.

Benefits of technology

It enables efficient and accurate extraction of user-relevant information from EPC project files, improving the accuracy of information identification and processing efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120849603B_ABST
    Figure CN120849603B_ABST
Patent Text Reader

Abstract

The application discloses an EPC project engineering information extraction method, device and equipment and a medium, relates to the technical field of building engineering management, and comprises the following steps: acquiring an EPC project engineering file and user demand; wherein the EPC project engineering file comprises multiple text paragraphs; based on a Facebook artificial intelligence similarity search (FAISS) index and the user demand, multiple candidate text paragraphs are determined from the EPC project engineering file; based on the user demand, a target text paragraph is determined from the multiple candidate text paragraphs; and based on the user demand, EPC project engineering information is extracted from the target text paragraph. The application can extract accurate EPC project engineering information from an EPC construction file.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of construction engineering management technology, specifically to methods, devices, equipment, and media for extracting engineering information from EPC projects. Background Technology

[0002] EPC (Engineering, Procurement, Construction) is a project construction model that encompasses design, equipment procurement, construction, installation, commissioning, and final handover. Under this model, the contractor assumes overall responsibility for the entire project. The owner only needs to specify the expected goals and functional requirements, while the contractor is responsible for the specific implementation of the project. This model effectively integrates resources, shortens the construction period, and reduces costs.

[0003] However, during the preliminary management of EPC projects, it is necessary to enter documents such as the EPC project general contracting contract, construction drawings, and quotation into the EPC project management system. Because EPC project documents are characterized by complex and diverse file formats and a large number of pages, it is impossible to extract accurate EPC project information from these documents. Summary of the Invention

[0004] This invention aims to address one of the technical problems in related technologies to a certain extent. To this end, this invention provides a method, apparatus, device, and medium for extracting engineering information from EPC projects, which has the advantage of being able to extract accurate EPC project engineering information from EPC project documents.

[0005] To achieve the above objectives, the present invention adopts the following technical solution:

[0006] A method for extracting engineering information from EPC projects, comprising:

[0007] Obtain the EPC project engineering files and user requirements; wherein, the EPC project engineering files include multiple text paragraphs;

[0008] Based on the Facebook AI similarity search FAISS index and the user requirements, multiple candidate text paragraphs were identified from the EPC project engineering files;

[0009] Based on the user's requirements, the target text paragraph is determined from the plurality of candidate text paragraphs;

[0010] Based on the user's requirements, EPC project engineering information is extracted from the target text paragraph.

[0011] Optionally, the step of filtering multiple candidate text paragraphs from the EPC project engineering file based on the Facebook AI similarity search FAISS index and the user requirements includes:

[0012] The multiple text paragraphs are converted into text paragraph vectors, and the user requirements are converted into query vectors;

[0013] The initial FAISS index is trained using a preset number of text paragraph vectors, resulting in a trained FAISS index.

[0014] Add all the text paragraph vectors to the trained FAISS index to obtain the index file;

[0015] Using the index file and the query vector, multiple candidate text paragraphs are selected from the EPC project engineering file.

[0016] Optionally, the step of filtering multiple candidate text paragraphs from the EPC project engineering file using the index file and the query vector includes:

[0017] Determine the similarity score between the query vector and each text paragraph vector in the index file; wherein the similarity score includes a semantic similarity score and a keyword matching score;

[0018] The text paragraph vectors with similarity scores greater than the preset similarity scores are used as the target text paragraph vectors;

[0019] The text paragraph corresponding to the target text paragraph vector is taken as the candidate text paragraph.

[0020] Optionally, before training the initial FAISS index using a preset number of text paragraph vectors and obtaining the trained FAISS index, the method further includes:

[0021] Determine the number of the first paragraphs of the text paragraphs;

[0022] If the number of the first paragraphs is greater than the first preset number, the inverted file index is selected as the initial FAISS index;

[0023] If the number of the first paragraphs is less than the first preset number, a brute-force search index is selected as the initial FAISS index.

[0024] Optionally, the step of determining the target text paragraph from the plurality of candidate text paragraphs based on the user's requirements includes:

[0025] For each candidate text paragraph, an embedding vector is added between the candidate text paragraph and the user requirement to obtain combined text;

[0026] The combined text is input into the cross encoder to obtain the text matching score output by the cross encoder;

[0027] The combined text with a text matching score greater than the preset text matching score is taken as the target combined text;

[0028] The candidate text paragraph corresponding to the target combined text is taken as the target text paragraph.

[0029] Optionally, the step of adding an embedding vector between the candidate text paragraph and the user requirement for each candidate text paragraph to obtain the combined text includes:

[0030] Determine the number of second paragraphs in the candidate text paragraphs;

[0031] If the number of the second paragraphs is greater than the number of the second preset paragraphs, for each candidate text paragraph, a word matching score is determined between the word vector of the candidate text paragraph and the word vector of the user's needs.

[0032] The candidate text paragraphs corresponding to the word matching score that is greater than the preset word matching score are selected as new candidate text paragraphs.

[0033] For each new candidate text paragraph, an embedding vector is added between the new candidate text paragraph and the user requirement to obtain the combined text.

[0034] Optionally, the step of extracting EPC project engineering information from the target text paragraph based on the user requirements includes:

[0035] If the user's requirement is of the type of project information, project information is extracted from the target text paragraph using regular expressions and / or a trie.

[0036] When the user's requirement is of the type of project personnel information, the project personnel information is extracted from the target text paragraph using sequence labeling technology;

[0037] When the user's requirement is a project plan, project plan information is extracted from the target text paragraph using question-and-answer machine reading comprehension technology.

[0038] Secondly, the present invention provides an EPC project engineering information extraction device, comprising:

[0039] The acquisition module is used to acquire EPC project engineering files and user requirements; wherein, the EPC project engineering files include multiple text paragraphs;

[0040] The first determining module is used to filter out multiple candidate text paragraphs from the EPC project engineering file based on the Facebook AI similarity search FAISS index and the user requirements.

[0041] The second determining module is used to determine the target text paragraph from the plurality of candidate text paragraphs based on the user's requirements;

[0042] The extraction module is used to extract EPC project engineering information from the target text paragraph based on the user's requirements.

[0043] Thirdly, the present invention also provides a computer device, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the EPC project engineering information extraction method described in any of the above claims.

[0044] Meanwhile, the present invention also provides a computer-readable medium having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the EPC project engineering information extraction method described in any of the above claims.

[0045] This invention first uses Facebook's AI similarity search FAISS index and the user's requirements to filter multiple text paragraphs in EPC project files, quickly locating multiple candidate text paragraphs highly relevant to the user's requirements. After identifying multiple candidate text paragraphs, a second filtering is performed to obtain multiple target text paragraphs. Finally, EPC project information corresponding to the requirements is extracted from the target text paragraphs. In other words, compared to related technologies that directly use large language models for full-text data recognition, this invention achieves a "coarse screening-fine extraction" layered processing through multi-level matching, using the FAISS index and user requirements. This layered processing mechanism identifies the target text paragraphs most relevant to the user's requirements from the EPC project files and extracts EPC project information from them, thereby achieving accurate extraction of EPC project information, improving the accuracy of information recognition and processing efficiency, and effectively solving the problem of intelligent parsing of large and complex documents.

[0046] These features and advantages of the present invention will be disclosed in detail in the following specific embodiments and accompanying drawings. The preferred embodiments or means of the present invention will be shown in detail in conjunction with the accompanying drawings, but are not intended to limit the technical solutions of the present invention. In addition, each of these features, elements and components appearing in the following text and drawings is a plurality of, and different symbols or numbers are used for convenience of representation, but all represent parts with the same or similar construction or function. Attached Figure Description

[0047] The present invention will be further described below with reference to the accompanying drawings:

[0048] Figure 1 A flowchart illustrating one embodiment of the EPC project engineering information extraction method provided by the present invention;

[0049] Figure 2 A flowchart illustrating an implementation method for determining candidate text paragraphs from multiple text paragraphs in an EPC project, as provided in this embodiment of the invention.

[0050] Figure 3 A flowchart illustrating an implementation method for selecting candidate text paragraphs from multiple text paragraphs using similarity scoring, as provided in this embodiment of the invention.

[0051] Figure 4 A flowchart illustrating one implementation of selecting an initial FAISS index based on the number of the first paragraphs of a text segment, as provided in an embodiment of the present invention;

[0052] Figure 5 A flowchart illustrating one embodiment of the present invention for selecting target text paragraphs from candidate text paragraphs;

[0053] Figure 6 A flowchart illustrating an embodiment of the present invention for filtering candidate text paragraphs based on the number of second paragraphs of candidate text paragraphs;

[0054] Figure 7 A flowchart illustrating an implementation method for extracting EPC project engineering information from a target text paragraph, as provided in this embodiment of the invention.

[0055] Figure 8 A block diagram illustrating one embodiment of the electronic device provided by the present invention;

[0056] Figure 9 This is a schematic diagram of a computer-readable medium provided by the present invention.

[0057] Explanation of reference numerals in the attached figures

[0058] 101: Processor; 102: Memory; 103: I / O interface; 104: Bus Detailed Implementation

[0059] Embodiments of the present invention are described in detail below, examples of which are illustrated in the accompanying drawings, wherein the same or similar reference numerals denote the same or similar elements or elements having the same or similar functions throughout. The embodiments described are intended to explain the present invention and should not be construed as limiting the invention.

[0060] The terms "an embodiment," "example," or "trademark" used in this specification refer to a particular feature, structure, or characteristic described in connection with the embodiment itself that may be included in at least one embodiment disclosed in this invention. The phrase "in an embodiment" appearing in various places throughout the specification does not necessarily refer to the same embodiment.

[0061] As a first aspect of the present invention, a method for extracting engineering information from EPC projects is provided, such as... Figure 1 As shown, the method includes:

[0062] In step S110, the EPC project engineering files and user requirements are obtained.

[0063] The EPC project engineering documents include multiple text paragraphs.

[0064] In this embodiment, EPC project engineering documents include, but are not limited to, the general contracting contract, construction drawings (CAD or BIM model), stamped PDF files, and a comprehensive unit price analysis table (Excel format). User requirements can be text information entered by the user through the human-computer interaction interface of an electronic device to indicate that they wish to obtain specific information from the EPC project engineering documents, such as start and completion dates, contract amount, and information about the client and contractor.

[0065] Specifically, electronic devices can digitize paper documents of EPC projects to obtain electronic documents. Then, Optical Character Recognition (OCR) technology is used to convert the image content in the electronic documents into editable text, resulting in the EPC project files. After obtaining the EPC project files, they can be divided into "section / subsection" level paragraphs based on text information such as title numbers, fonts, blank lines, and layout information, resulting in multiple text paragraphs.

[0066] In step S120, based on the Facebook AI similarity search FAISS index and the user requirements, multiple candidate text paragraphs are determined from the EPC project engineering file.

[0067] Understandably, given the large number of pages in EPC project files, dividing them into "section / subsection" level text segments would result in an even larger number of segments. However, many of these segments may have low relevance to user requirements. Therefore, to reduce subsequent workload, Facebook AI Similarity Search (FAISS) and user requirements can be used to perform a primary match on multiple text segments in the EPC project files, i.e., to initially filter them and obtain candidate text segments. For specific steps on using FAISS and user requirements to perform a primary match on multiple text segments in the EPC project files to obtain candidate text segments, please refer to [link to specific steps]. Figure 2 As shown, step S120 specifically includes:

[0068] Step S210: Convert the multiple text paragraphs into text paragraph vectors and convert the user requirements into query vectors.

[0069] Specifically, when converting text paragraphs into text paragraph vectors and user requests into query vectors, deep learning models can be used to process the text paragraphs and user requests. When using deep learning models for this conversion, different models can be selected based on the application scenario. For example, if the text paragraphs and user requests are in English, a Sentence Embeddings using Siamese BERT Networks model can be chosen; if the text paragraphs and user requests are in Chinese, a Moka Massive Mixed Embedding (M3E) model can be chosen.

[0070] After selecting a suitable deep learning model, the text paragraph and user requirements can be input into the deep learning model respectively. The encoder of the deep learning model obtains the semantic representation corresponding to the text paragraph and the semantic representation corresponding to the user requirements. Based on their respective semantic representations, a dense vector of fixed dimensions is generated, such as a 768-dimensional dense vector. The dense vector of fixed dimensions is then used as the paragraph text vector corresponding to the text paragraph and the query vector corresponding to the user requirements.

[0071] Step S220: Train the initial FAISS index using a preset number of text paragraph vectors to obtain the trained FAISS index.

[0072] Step S230: Add all the text paragraph vectors to the trained FAISS index to obtain the index file.

[0073] Step S240: Using the index file and the query vector, select multiple candidate text paragraphs from the EPC project engineering file.

[0074] After converting text paragraphs into text paragraph vectors, since text paragraph vectors are dense vectors with large dimensions and a large number of text paragraph vectors, in order to meet the basic requirements of similarity search while reducing storage costs in a resource-limited environment, a predetermined number of text paragraph vectors can be used to train an initial FAISS index to obtain a trained FAISS index. For example, 10% of the text paragraph vectors can be used to train the initial FAISS index to obtain a trained FAISS index.

[0075] After obtaining the trained FAISS index, all text paragraph vectors can be combined with the trained FAISS index to form a retrieval file. The retrieval file stores the text paragraph vectors of each text paragraph and the index structure for fast retrieval.

[0076] Upon receiving a user request, the aforementioned steps can be used to convert the user request into a query vector, and then the `search` function can be used to perform a vector search. The `search` function can take the query vector and a preset similarity score as parameters, and return a vector of text segments whose similarity score to the query vector is greater than the preset similarity score.

[0077] It should be noted that when using similarity scoring to filter candidate text paragraphs from multiple text paragraphs, to avoid the bias of a single algorithm, further reference is made. Figure 3 As shown, as an optional implementation, step S240 specifically includes:

[0078] Step S310: Determine the similarity score between the query vector and each text segment vector in the index file.

[0079] The similarity score includes semantic similarity score and keyword matching score.

[0080] Step S320: The text paragraph vector with a similarity score greater than the preset similarity score is taken as the target text paragraph vector.

[0081] Step S330: The text paragraph corresponding to the target text paragraph vector is selected as the candidate text paragraph.

[0082] Specifically, for each text paragraph vector, the cosine similarity between the text paragraph vector and the query vector can be calculated, and this cosine similarity is used as the semantic similarity between the text paragraph vector and the query vector. After calculating the semantic similarity, the sum of the BM25 (Best-Match 25) scores corresponding to all matching keywords can be used as the final keyword matching score, based on the matching degree between the user's request keywords and the text paragraph keywords. The formula for calculating the BM25 score is as follows: , Document With query The relevance score, i.e., the relevance score between the text paragraph vector and the query vector. and Represents empirical parameters. , , Keywords Inverse document frequency, Keywords In the document word frequency in Document Length, This indicates the average document length.

[0083] After obtaining the semantic similarity and keyword matching degree between the query vector and each text segment vector, a semantic similarity score can be determined based on the semantic similarity and its corresponding weight, and a matching degree score can be determined based on the keyword matching degree and its corresponding weight. Finally, a similarity score is determined based on the semantic similarity score and the keyword matching degree score. After determining the similarity score, text segment vectors with similarity scores greater than the preset similarity score can be used as target text segment vectors, and text segments corresponding to the target text segment vectors can be used as candidate text segments.

[0084] Alternatively, as another optional implementation, candidate text paragraphs can be selected from multiple text paragraphs using top-K and similarity scores. Specifically, all text paragraph vectors are sorted in descending order based on their similarity scores, and the top K text paragraph vectors with similarity scores greater than a preset similarity score are selected as target text paragraph vectors. The text paragraphs corresponding to the target text paragraph vectors are then selected as candidate text paragraphs. Here, K can be set according to actual needs; this embodiment does not impose any special restrictions on it, such as K being 15, 20, 25, etc.

[0085] The preset similarity score can be determined based on the document complexity and retrieval accuracy requirements. The preset similarity score ranges from 0.65 to 0.85, preferably 0.75.

[0086] As an optional implementation, the preset similarity score can be determined based on the number of pages in the EPC project engineering document. For example, when the number of pages in the EPC project engineering document is less than 100, the preset similarity score is set to 0.65 to 0.70; when the number of pages in the EPC project engineering document is between 100 and 500, the preset similarity score is set to 0.70 to 0.80; and when the number of pages in the EPC project engineering document is greater than 500, the preset similarity score is 0.75 to 0.85.

[0087] In this embodiment, semantic similarity is a metric used to measure the similarity between two vectors. In text processing, text is typically represented as vectors, and the similarity is determined by calculating the cosine value between them. The closer the cosine value is to 1, the more similar the two vectors are; the closer it is to 0, the less similar they are. BM25 is an algorithm for information retrieval used to evaluate the relevance between keywords and documents. It considers factors such as the frequency of keyword occurrences in the document and the document length. While semantic similarity can capture the semantic similarity of text, it is not sensitive to the absolute frequency of keyword occurrences and document length, and may overestimate the impact of long documents or low-frequency words. BM25, on the other hand, focuses on keyword matching and lacks semantic understanding capabilities, failing to identify synonyms or contextual relationships. Therefore, by determining the similarity score between the query vector and each text paragraph vector through two dimensions—semantic similarity and keyword matching—not only can semantic similarity bring a higher recall rate to cover more potentially relevant text, but BM25 can also improve precision, thereby filtering out results that are more closely matched to the keywords. Meanwhile, the hybrid scoring can find the optimal balance between the two, that is, it can not only cover "semantic association" and "keyword matching" at the same time, avoiding the one-sidedness of a single algorithm, but also improve the reliability of the results. Especially in complex data such as multi-domain texts and ambiguous words, the comprehensive score is closer to the true relevance.

[0088] In addition, this embodiment dynamically adjusts the preset similarity score based on the number of pages in the EPC project files. Specifically, for EPC project files with fewer pages, which are characterized by focused content and simple structure, a lower preset similarity score is set to avoid missing potentially relevant information due to strict matching, resulting in missed detections. For EPC project files with more pages, which are characterized by complex content and numerous sub-topics, a higher preset similarity score is set to filter out less relevant content, avoid false detections, and ensure accurate location of core information.

[0089] It is worth mentioning that, in order to reduce computational resource consumption while quickly selecting candidate text paragraph vectors, before training the initial FAISS index using a preset number of text paragraph vectors and obtaining the trained FAISS index, further steps are taken, referring to... Figure 4 As shown, as an optional implementation, before step S220, the following steps are also included:

[0090] In step S410, the number of the first paragraphs of the text paragraphs is determined.

[0091] In step S420, if the number of the first paragraphs is greater than the first preset number, the inverted file index is selected as the initial FAISS index.

[0092] In step S430, if the number of the first paragraphs is less than the first preset number, a brute-force search index is selected as the initial FAISS index.

[0093] Specifically, after dividing the text content within the EPC project files into multiple text segments based on the aforementioned operations, the number of the first segment can be counted. If the number of the first segment is greater than a first preset number, an inverted file index is selected as the initial FAISS index; if the number of the first segment is less than the first preset number, a brute-force search index is selected as the initial FAISS index. The first preset number can be set according to actual needs; this embodiment does not impose any special restrictions on it, such as using 10,000. When training the initial FAISS index using the preset number of text segment vectors, the preset number of text segment vectors can be set according to actual needs; this embodiment does not impose any special restrictions on it, such as using 10%, 15%, or 20% of the text segment vectors to train the initial FAISS index.

[0094] In this embodiment, the initial FAISS index is selected based on the number of the first paragraphs of the text. That is, if the number of the first paragraphs is less than the first preset number, the brute-force search index is selected as the initial FAISS index. If the number of the first paragraphs is greater than the first preset number, the inverted file index is selected as the initial FAISS index. This can quickly filter out candidate text paragraph vectors while reducing the consumption of computing resources, thereby achieving a balance between search efficiency and computing resource consumption.

[0095] In step S130, based on the user's requirements, the target text paragraph is determined from the plurality of candidate text paragraphs.

[0096] After obtaining multiple candidate text paragraphs, user requirements can be used to refine and rank them, i.e., to identify the most suitable paragraphs, i.e., the target text paragraphs. However, when refining the ranking of candidate text paragraphs based on user requirements, due to the numerous ambiguities in natural language, such as polysemous words and vague pronouns, further steps are needed to uncover the deeper semantic relationship between user requirements and candidate text paragraphs, referring to… Figure 5 As shown, as an optional implementation, step S130 specifically includes:

[0097] In step S510, for each candidate text paragraph, an embedding vector is added between the candidate text paragraph and the user requirement to obtain combined text.

[0098] In this embodiment, the embedding vector can be a classification token (CLS) vector and a separator token (SEP) vector.

[0099] Specifically, an embedding vector can be added between the candidate text paragraph and the user requirement in the following format: [CLS vector] User requirement [SEP vector] Candidate text paragraph [SEP vector].

[0100] It should be noted that when refining candidate text paragraphs based on user requirements, further steps are taken to balance refining efficiency and accuracy, referring to... Figure 6 As shown, as an optional implementation, step S510 specifically includes:

[0101] In step S610, the number of second paragraphs of the candidate text paragraphs is determined.

[0102] In step S620, if the number of the second paragraphs is greater than the number of the second preset paragraphs, for each candidate text paragraph, a word matching score is determined between the word vector of the candidate text paragraph and the word vector of the user requirement.

[0103] In step S630, the candidate text paragraphs corresponding to the word matching score being greater than the preset word matching score are selected as new candidate text paragraphs.

[0104] In step S640, for each new candidate text paragraph, an embedding vector is added between the new candidate text paragraph and the user requirement to obtain the combined text.

[0105] In this embodiment, the preset word matching score can be set according to actual needs. This embodiment does not impose any special restrictions on this. For example, the preset word matching score can be 0.65, 0.7, 0.75, etc.

[0106] Specifically, after dividing the text content in the EPC project engineering file into multiple text segments, the electronic device can assign a unique ID to each text segment and encode each text segment using a pre-trained late-interaction model to generate a first token-level vector matrix. That is, assuming that a text segment contains N tokens, each token vector has a dimension of D, the output matrix of the first token-level vector matrix has a shape of [N, D], and the first token-level vector matrix of each text segment is stored in the vector database according to the ID of the text segment.

[0107] After identifying multiple candidate text paragraphs, the number of second paragraphs can be counted. If the number of second paragraphs is greater than a second preset number (e.g., if the preset number is 1000 and the number of second paragraphs is 6000), the first token-level vector matrix corresponding to each candidate text paragraph can be determined from the vector database based on the ID of each candidate text paragraph. For user needs, a late-interaction model can be used to encode these needs, generating a second token-level vector matrix corresponding to them. Assuming the user needs contain M tokens, each token vector has a dimension of D, the output matrix of the second token-level vector matrix has a shape of [M, D]. The vector dimension of the first token-level vector matrix is ​​the same as that of the second token-level vector matrix.

[0108] For each candidate text segment, the second-level token vector matrix and each first-level token vector matrix are multiplied to obtain a similarity matrix denoted as [M, N]. Each element (i, j) in the similarity matrix represents the similarity between the i-th token in the second-level token vector matrix and the j-th token in the first-level token vector matrix. After obtaining the similarity matrix, the maximum value is taken according to the segment token dimension (N) to obtain the best matching score for each word vector of the user requirement. The sum of the best matching scores of all word vectors of the user requirement is used as the word matching score between the word vectors of the candidate text segment and the word vectors of the user requirement.

[0109] After obtaining the lexical matching score, all candidate text segments can be further filtered based on the lexical matching score. Specifically, candidate text segments with lexical matching scores greater than a preset lexical matching score are selected as new candidate text segments. To further reduce the number of new candidate text segments during the filtering process and avoid an excessive number of new candidate text segments, a top-k strategy can be used. This involves sorting all candidate text segments in descending order based on the lexical matching score, and selecting the top k candidate text segments with lexical matching scores greater than the preset lexical matching score as new candidate text segments. Here, k can be set according to actual needs, such as k=300; this embodiment does not impose any restrictions on this.

[0110] After obtaining new candidate text paragraphs, for each new candidate text paragraph, an embedding vector can be added between the new candidate text paragraph and the user requirement in the aforementioned format to obtain combined text, namely [CLS vector] user requirement [SEP vector] new candidate text paragraph [SEP vector].

[0111] In this embodiment, when the number of second paragraphs of candidate text paragraphs is greater than the number of second preset paragraphs, the late-interaction model is used to calculate the word matching score between user needs and each candidate text paragraph. Then, the word matching score is used to filter the candidate text paragraphs, which can quickly filter a large number of candidate text paragraphs to reduce the scale of subsequent Cross-Encoder processing.

[0112] In step S520, the combined text is input into the cross encoder to obtain the text matching score output by the cross encoder.

[0113] In step S530, the combined text with a text matching score greater than a preset text matching score is taken as the target combined text.

[0114] In step S540, the candidate text paragraph corresponding to the target combined text is taken as the target text paragraph.

[0115] In this embodiment, the preset text matching score can be dynamically adjusted according to the complexity of the user's needs. The preset text matching score can range from 0.80 to 0.95, preferably 0.85. For example, when the user's need is a simple keyword query, the preset text matching score ranges from 0.80 to 0.85; when the user's need is a complex condition query, the preset text matching score ranges from 0.85 to 0.90; and when the user's need is a complex semantic query, the preset text matching score ranges from 0.90 to 0.95.

[0116] The preset text matching score can be set according to actual needs. This embodiment does not impose any special restrictions on this. For example, the preset text matching score can be 0.80, 0.85, 0.90, etc.

[0117] After adding embedding vectors between candidate text paragraphs and user requirements to obtain combined text based on the aforementioned format, the combined text can be input into a cross-encoder. The cross-encoder jointly encodes each combined text and models global semantic associations through a self-attention mechanism, outputting a text matching score for each combined text. After obtaining the text matching scores for each combined text, candidate text paragraphs can be filtered based on the text matching scores. That is, combined text paragraphs with text matching scores greater than a preset text matching score are taken as target combined text paragraphs, and candidate text paragraphs corresponding to the target combined text paragraphs are taken as target text paragraphs. The cross-encoder can be a cross-encoder built using Bidirectional Encoder Representations from Transformers (BERT) or BGE (BAAI General Embedding)-m3e as the basic model.

[0118] Alternatively, as another optional implementation, after obtaining the text matching score of each combined text, the target text paragraph can be determined from the candidate text paragraphs using the top-N and the text matching score. That is, all combined texts are sorted in descending order using the text matching score, and the top N combined texts with text matching scores greater than the preset text matching score are taken as the target combined texts, and the candidate text paragraphs corresponding to the target combined texts are taken as the target text paragraphs.

[0119] In this embodiment, after selecting candidate text paragraphs from the existing text, the user's requirements are concatenated with each candidate text paragraph to form a combined text input cross-encoder. This cross-encoder performs joint encoding on each combined text and engages in full semantic interaction during the encoding process. Compared to independently encoding the user's requirements and candidate text paragraphs and then calculating similarity through vector multiplication, using a cross-encoder for joint encoding of combined text is better at capturing complex matching relationships such as contextual associations and semantic ambiguities. Furthermore, compared to the shallow similarity calculation using vector multiplication in first-level matching, the cross-encoder can directly output a text matching score for a specific combined text, making it more sensitive to subtle semantic differences. Its accuracy advantage is particularly evident when handling long texts, polysemous words, or complex sentence structures.

[0120] In step S140, based on the user requirements, EPC project engineering information is extracted from the target text paragraph.

[0121] In this embodiment, EPC project engineering information can be structured or unstructured data generated throughout the entire lifecycle of the EPC project, such as various types of data generated during the design, procurement, construction, and acceptance phases.

[0122] It should be noted that when extracting EPC project information from target text paragraphs based on user needs, the diverse information formats within these paragraphs, along with the different data structures and extraction targets for different types of information, necessitate further steps to achieve efficient and accurate information extraction, referring to... Figure 7 As shown, as an optional implementation, step S140 specifically includes:

[0123] In step S710, if the user's requirement is of the type of project information, project information is extracted from the target text paragraph using regular expressions and / or a trie.

[0124] In step S720, if the user's requirement is of the type of project personnel information, the project personnel information is extracted from the target text paragraph using sequence labeling technology.

[0125] In step S730, if the user's requirement is a project plan, project plan information is extracted from the target text paragraph using question-and-answer machine reading comprehension technology.

[0126] Specifically, when the user's requirement is for project information, such as extracting EPC project information with fixed formats like amount, date, percentage, and number, this type of EPC project information, characterized by fixed formats or explicit keywords, belongs to structured or semi-structured data. For example, EPC project number: XXXXX, budget amount: XXXXX yuan. Therefore, regular expressions and / or trie can be used to extract project information from the target text paragraph. That is, when using regular expressions to extract project information, predefined templates can accurately capture formatted information, while trie can perform fast retrieval based on high-frequency keywords such as project type and status words, avoiding duplicate matching and improving processing speed.

[0127] When the user's requirement is for project personnel information, such as searching for "client unit" or "construction personnel," this type of EPC project information belongs to named entities in unstructured text. When extracting this type of EPC project information, it is necessary to consider the context to identify entity boundaries and categories. Sequence labeling techniques can be used, such as combining BERT with Conditional Random Fields (CRF), or using pre-trained models that consider document layout information (e.g., LayoutLMv3). These methods label the target text paragraphs, i.e., by tagging each character / word in the target text paragraph, such as "Zhang San" → name, "Manager" → position. By using the labels for each character / word, entities in complex contexts can be dynamically identified, resolving ambiguity issues.

[0128] When the user's requirement is a project plan, such as "Both Party A and Party B confirm that the contract amount is RMB 32,000,000.00," the project plan information for this type of EPC project is characterized by its dispersed information and strong logical connections, with multiple fields nested within the sentence. Therefore, to understand the semantic relationships and user intent when extracting this type of EPC project information, Machine Reading Comprehension (MRC) technology can be used to extract project plan information from the target text paragraph. This involves converting the user's requirement into a user question, such as converting "the person in charge of task A" into "who is the person in charge of task A?" The answer can then be located from the target text paragraph based on the user question, and the located answer can be used as the project plan information. This can be achieved by using a Q&A model, a finely tuned version of the BERT-based Chinese pre-trained model (MacBERT, Masked Chinese BERT), or a finely tuned version of the robustly optimized BERT method (RoBERTa). The approach model uses question-and-answer machine reading comprehension to extract project plan information from target text paragraphs.

[0129] In this embodiment, since the EPC project engineering information formats that need to be extracted in actual business vary greatly in complexity, different methods are selected to extract EPC project engineering information from target text paragraphs according to the type of user needs. By matching the characteristics of different information types, the optimal extraction method is selected, which not only ensures efficient processing of simple scenarios, but also solves the accuracy problem of complex scenarios, and finally achieves "doing the right thing with the right method", thereby balancing accuracy, efficiency and cost in actual business.

[0130] In this embodiment, multiple text paragraphs in the EPC project file are first filtered using the Facebook AI similarity search FAISS index and the user requirements. This quickly identifies multiple candidate text paragraphs that are highly relevant to the user requirements. After identifying these candidate text paragraphs, a second filtering process is performed to obtain multiple target text paragraphs. Finally, EPC project information corresponding to the user requirements is extracted from these target text paragraphs. Compared to related technologies that directly use large language models for full-text data recognition, this invention achieves a "coarse screening-refined extraction" layered processing through multi-level matching, using the FAISS index and user requirements. This layered processing mechanism identifies the target text paragraphs with the highest relevance to the user requirements from the EPC project file and extracts EPC project information from these target text paragraphs. This achieves accurate extraction of EPC project information, improves the accuracy of information recognition and processing efficiency, and effectively solves the problem of intelligent parsing of large and complex documents.

[0131] In addition, in this embodiment, when performing "initial screening" of text segments, the FAISS index is used to determine candidate text segments. The construction of the FAISS index requires consideration of both time and space complexity. The time complexity is O(n·d·log(k)), where n is the number of text segments, d is the vector dimension, and k is the number of cluster centers. The space complexity is O(n·d + k·d). When the initial number of text segments n=10000 and the text segment vector dimension d=768, the index construction time is approximately 2-5 seconds. When the initial FAISS index is an inverted file index, the query complexity of the inverted file index is O(log(n) + R), where R is the number of returned results. When the initial FAISS index is a brute-force search index, the query complexity of the brute-force search index is O(n·d), and the complexity of the mixed similarity calculation is O(d + |Q|·|D|), where |Q| is the query length and |D| is the document length. Furthermore, during the "refinement" of text paragraphs, a cross-encoder is used to determine the target text paragraph from the candidate text paragraphs. The encoding complexity of the cross-encoder for a single combined text is O(L²), where L is the length of the combined text. The complexity of the encoder for the batch-optimized combined text is O(B·L² / P), where B is the batch size and P is the parallelism. Therefore, the FAISS index is used for "initial screening," and the encoder is used for "refinement." Compared with traditional full-text retrieval methods, the query speed of this embodiment is improved by 3-5 times, and the memory usage is reduced by 40%-60%. Compared with pure semantic search methods, the accuracy of this embodiment is improved by 15%-25%.

[0132] Furthermore, to verify the effectiveness of this embodiment, a comparative experiment was conducted on a real EPC project dataset. The experimental environment included the dataset, test queries, and evaluation metrics. The dataset consisted of project files from 50 EPC projects, totaling approximately 15,000 pages of documents; the test queries covered 300 query requirements across three categories: project information, personnel information, and plan information; the evaluation metrics included precision, recall, F1 score, and response time. Search methods included keyword retrieval with regular expressions, pure BERT semantic search, ElasticSearch full-text search, and the retrieval method described in this embodiment.

[0133] The experimental results are compared and contrasted as shown in Table 1.

[0134]

[0135] Table 1

[0136] In terms of classification performance, when using the retrieval method of this embodiment to extract engineering information of EPC projects, the accuracy rate of project information queries is 92.3% through precise matching of regular expressions; the accuracy rate of project personnel information queries is 85.7% through effective identification of entity boundaries using sequence labeling technology; and the accuracy rate of project plan queries is 84.8% through accurate location of complex information using question-and-answer reading comprehension.

[0137] In terms of performance improvement, compared with keyword retrieval + regular expression, the retrieval method in this embodiment improves the accuracy by 22.4% and shortens the response time by 77.2% when extracting engineering information for EPC projects. Compared with pure BERT semantic search, the retrieval method in this embodiment further shortens the response time while maintaining high accuracy when extracting engineering information for EPC projects.

[0138] After extracting EPC project information from the EPC project engineering files, the extracted EPC project engineering information can be populated into the corresponding information modules. That is, the project information is populated into the project information module to integrate basic information such as project overview; the project personnel information is populated into the project personnel module to integrate the information of participating units and related personnel extracted from the project engineering contract and organizational structure documents; and the project plan information is populated into the project plan module to generate a preliminary work breakdown structure (WBS) based on the key nodes and bill of quantities of the EPC project.

[0139] After the extracted EPC project information is populated into the corresponding information modules, a preliminary project schedule can be generated based on the EPC project information in the information modules, and the project can be formally created. This involves dividing the EPC project into multiple levels of engineering tasks according to the standard construction process. Level 1 engineering tasks typically include key nodes such as foundation pile engineering, pile cap foundation, main building structure, masonry structure, curtain wall engineering, electromechanical installation, rough finishing, and fine finishing. Electronic equipment will automatically identify the specific task components from the EPC project file based on the characteristics of the EPC project and through the aforementioned operations. For each level 1 task, it can be further subdivided into several level 2 engineering tasks, forming a complete task decomposition structure.

[0140] After subdividing the primary task into several secondary tasks, the electronic equipment can extract the start and end times of the EPC project from the EPC project file according to the aforementioned operations. These start and end times are then used as the overall time constraint, and appropriate duration calculation methods are applied based on the characteristics of different tasks. For some tasks, the duration can be precisely calculated based on the workload of the secondary tasks, while for others, the duration can be determined based on the total workload of the primary tasks.

[0141] After determining the duration of each project task, the electronic equipment can identify tasks that can be executed in parallel and those that must be performed sequentially, taking into full account the actual construction situation, and rationally allocate time. That is, after determining the duration of each project task, the electronic equipment can prioritize the tasks according to construction process requirements and logical relationships. For tasks that can be executed in parallel, the electronic equipment will optimize the time arrangement to shorten the overall project duration; for tasks that must be performed sequentially, they will be arranged strictly according to the construction steps, integrating them into a complete construction plan.

[0142] To facilitate better understanding, we will take pile foundation retaining construction as an example for explanation.

[0143] The primary tasks of pile foundation retaining wall construction include four secondary tasks: construction of engineering piles, construction of retaining piles, static load test of design piles, and dewatering of the foundation pit. The electronic system calculates the construction time for both engineering piles and retaining piles based on the number of piles and construction efficiency specified in the EPC project documents. Since both types of piles can be constructed simultaneously, the electronic system uses the longer construction time as the benchmark. The static load test of design piles and dewatering of the foundation pit can be completed concurrently with the pile construction based on engineering experience, without requiring additional time. Therefore, the total construction time of the pile foundation retaining wall is the longer of the engineering pile and retaining pile construction times, achieving optimal allocation of time resources.

[0144] Secondly, this embodiment also provides an EPC project engineering information extraction device, including:

[0145] The acquisition module is used to acquire EPC project engineering files and user requirements; wherein, the EPC project engineering files include multiple text paragraphs;

[0146] The first determining module is used to filter out multiple candidate text paragraphs from the EPC project engineering file based on the Facebook AI similarity search FAISS index and the user requirements.

[0147] The second determining module is used to determine the target text paragraph from the plurality of candidate text paragraphs based on the user's requirements;

[0148] The extraction module is used to extract EPC project engineering information from the target text paragraph based on the user's requirements.

[0149] As a third aspect of the present invention, this embodiment also provides an electronic device, such as... Figure 8 As shown, Figure 8 A block diagram of one embodiment of an electronic device, comprising:

[0150] One or more processors 101;

[0151] The memory 102 stores one or more computer programs that, when executed by the one or more processors 101, cause the one or more processors 101 to implement the EPC project engineering information extraction method according to the first aspect of the present invention.

[0152] The electronic device may also include one or more I / O interfaces 103 connected between the processor 101 and the memory 102, configured to enable information interaction between the processor 101 and the memory 102.

[0153] The processor 101 is a device with data processing capabilities, including but not limited to a central processing unit (CPU); the first memory is a device with data storage capabilities, including but not limited to random access memory (RAM, more specifically SDRAM, DDR, etc.), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), and flash memory (FLASH); the I / O interface (read-write interface) is connected between the processor 101 and the memory 102, enabling information exchange between the processor 101 and the memory 102, including but not limited to a data bus (Bus).

[0154] In some embodiments, the processor 101, memory 102, and I / O interface 103 are interconnected via bus 104, and thus connected to other components of the computing device.

[0155] As a fourth aspect of this embodiment, a computer-readable medium is provided, such as... Figure 9 As shown, Figure 9 This is a schematic diagram of a computer-readable medium on which a computer program is stored, which, when executed by a processor, implements the EPC project engineering information extraction method provided in the first aspect of this disclosure.

[0156] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. Accordingly, the computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can implement the methods of any of the above embodiments. Any references to memory, storage, databases, or other media used in the embodiments provided in this application can include non-volatile and / or volatile memory. Non-volatile memory may include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory. Volatile memory may include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in a variety of forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), dual data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link DRAM (SLDRAM), RAMbus direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM).

[0157] The above are merely specific embodiments of the present invention, but the scope of protection of the present invention is not limited thereto. Those skilled in the art should understand that the present invention includes, but is not limited to, the contents described in the accompanying drawings and the specific embodiments above. Any modifications that do not depart from the functional and structural principles of the present invention will be included within the scope of the claims.

Claims

1. An EPC project engineering information extraction method, characterized in that, The method comprises the following steps: obtaining an EPC project engineering file and user demand, wherein the EPC project engineering file comprises a plurality of text paragraphs; determining a plurality of candidate text paragraphs from the EPC project engineering file based on a Facebook artificial intelligence similarity search (FAISS) index and the user demand; determining a target text paragraph from the plurality of candidate text paragraphs based on the user demand; extracting EPC project engineering information from the target text paragraph based on the user demand; the step of determining the target text paragraph from the plurality of candidate text paragraphs based on the user demand comprises: adding an embedding vector between each candidate text paragraph and the user demand to obtain a combined text; inputting the combined text into a cross-encoder to obtain a text matching degree score output by the cross-encoder; taking the combined text with a text matching degree score greater than a preset text matching degree score as a target combined text; taking the candidate text paragraph corresponding to the target combined text as the target text paragraph; the step of adding an embedding vector between each candidate text paragraph and the user demand to obtain a combined text comprises: determining a second number of paragraphs of the candidate text paragraph; in a case where the second number of paragraphs is greater than a second preset number of paragraphs, determining, for each candidate text paragraph, a wordpiece matching degree score between a wordpiece vector of the candidate text paragraph and a wordpiece vector of the user demand; taking the candidate text paragraph corresponding to the wordpiece matching degree score greater than a preset wordpiece matching degree score as a new candidate text paragraph; adding an embedding vector between each new candidate text paragraph and the user demand to obtain the combined text.

2. The EPC project engineering information extraction method according to claim 1, characterized in that, the step of determining a plurality of candidate text paragraphs from the EPC project engineering file based on a Facebook artificial intelligence similarity search (FAISS) index and the user demand comprises: converting a plurality of text paragraphs into text paragraph vectors and converting the user demand into a query vector; training an initial FAISS index using a preset number of text paragraph vectors to obtain a trained FAISS index; adding all the text paragraph vectors to the trained FAISS index to obtain an index file; determining a plurality of candidate text paragraphs from the EPC project engineering file using the index file and the query vector.

3. The EPC project engineering information extraction method according to claim 2, characterized in that, the step of determining a plurality of candidate text paragraphs from the EPC project engineering file using the index file and the query vector comprises: determining a similarity score between the query vector and each text paragraph vector in the index file; wherein the similarity score comprises a semantic similarity score and a keyword matching degree score; taking the text paragraph vector with a similarity score greater than a preset similarity score as a target text paragraph vector; taking the text paragraph corresponding to the target text paragraph vector as the candidate text paragraph.

4. The EPC project engineering information extraction method according to claim 2, characterized in that, The method further includes: determining a first number of sections of the text passage; selecting an inverted file index as the initial FAISS index when the first number of sections is greater than a first preset number; selecting a brute-force search index as the initial FAISS index when the first number of sections is less than the first preset number.

5. The EPC project engineering information extraction method of claim 1, wherein, The step of extracting EPC project engineering information from the target text passage based on the user demand includes: extracting project information from the target text passage using a regular expression and / or a dictionary tree when the type of the user demand is a project information type; extracting project personnel information from the target text passage using a sequence labeling technique when the type of the user demand is a project personnel information type; extracting project plan information from the target text passage using a question and answer machine reading comprehension technique when the type of the user demand is a project plan type.

6. An EPC project engineering information extraction device characterized by comprising: The apparatus includes: an acquisition module configured to acquire an EPC project engineering file and a user demand, wherein the EPC project engineering file includes a plurality of text passages; a first determination module configured to filter a plurality of candidate text passages from the EPC project engineering file based on a Facebook artificial intelligence similarity search (FAISS) index and the user demand; a second determination module configured to determine a target text passage from the plurality of candidate text passages based on the user demand; an extraction module configured to extract EPC project engineering information from the target text passage based on the user demand; The second determination module is further configured to, for each candidate text passage, add an embedding vector between the candidate text passage and the user demand to obtain a combined text, input the combined text into a cross-encoder to obtain a text matching degree score output by the cross-encoder, take a combined text with a text matching degree score greater than a preset text matching degree score as a target combined text, and take a candidate text passage corresponding to the target combined text as the target text passage.

7. An electronic device, comprising: The apparatus includes: one or more processors; A memory having one or more computer programs stored thereon, wherein the one or more computer programs, when executed by the one or more processors, cause the one or more processors to implement the EPC project engineering information extraction method according to any one of claims 1 to 5.

8. A computer readable medium having stored thereon a computer program, characterized in that, The computer program is executed by the processor to implement the EPC project engineering information extraction method according to any one of claims 1 to 5.

Citation Information

Patent Citations

  • Paragraph extraction method and device and electronic equipment

    CN114861676A

  • LLM-based contract element extraction and auditing method and device

    CN119918514A