Contract management method and device, electronic equipment, storage medium and program product

CN122114825APending Publication Date: 2026-05-29CONTEMPORARY AMPEREX TECHNOLOGY CO LTD +1
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
CONTEMPORARY AMPEREX TECHNOLOGY CO LTD
Filing Date
2024-11-27
Publication Date
2026-05-29

Smart Images

  • Figure CN122114825A_ABST
    Figure CN122114825A_ABST
Patent Text Reader

Abstract

The application provides a contract management method and device, electronic equipment, a storage medium and a program product, and relates to the technical field of data processing. The method pre-constructs a contract label, configures a corresponding approval rule for the contract label, so that the corresponding approval rule can be quickly determined for approval by matching the text segment of the to-be-approved contract text with the contract label, and the approval efficiency is higher. Moreover, by splitting the to-be-approved contract text into text segments, the accuracy of the detailed approval of the contract text can be improved, so that the approval method of the present scheme can take into account the approval efficiency and accuracy.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of data processing technology, and more specifically, to a contract management method, apparatus, electronic device, storage medium, and program product. Background Technology

[0002] For large group enterprises, many currently use contract management systems for contract uploading, approval, and management. However, the contract approval process currently relies on designated personnel to review the contract text. Current contract management systems require multiple steps from staff during the approval process, resulting in low efficiency. Summary of the Invention

[0003] The purpose of this application is to provide a contract management method, apparatus, electronic device, storage medium, and program product to improve the inefficiency of existing contract approval methods.

[0004] In a first aspect, embodiments of this application provide a contract management method, the method comprising:

[0005] Extract text fragments from the contract text awaiting approval;

[0006] The text fragment is matched with pre-built contract tags to determine the contract tags that the text fragment matches, wherein the contract tags refer to contract content extracted from historical contract texts;

[0007] The approval rules configured in the contract tag are used to approve the matching text fragments to obtain the approval result.

[0008] In the above implementation process, by pre-constructing contract tags and configuring corresponding approval rules for these tags, the approval rules can be quickly determined and approved by matching text fragments of the contract text to be approved with contract tags, resulting in higher approval efficiency. Furthermore, by splitting the contract text to be approved into text fragments, the accuracy of detailed approval within the contract text can be improved. Therefore, the approval method in this solution can balance approval efficiency and accuracy.

[0009] Optionally, matching the text fragment with pre-built contract tags to determine the contract tags that the text fragment matches includes:

[0010] The text fragment is matched with pre-built contract tags to determine the contract tags that the text fragment matches;

[0011] If the text fragment matches at least two contract tags, extract the key elements of the text fragment.

[0012] The key elements are matched with the key elements corresponding to the contract tags that match the text fragment to determine the final matched contract tags.

[0013] In the above implementation process, the text fragments are first roughly matched with the contract tags. When multiple contract tags are matched, a fine match is then performed using key elements, which can improve matching efficiency and accuracy.

[0014] Optionally, the extraction of key elements from the text fragment includes:

[0015] The text fragment is segmented into words and tagged with parts of speech to obtain the segmentation results and part-of-speech tagging results.

[0016] Based on the part-of-speech tagging results, entity recognition and entity relation extraction are performed on each segment of the word segmentation results to obtain the entity and entity relation corresponding to each segment as the key elements of the text fragment.

[0017] In the above implementation process, since entities and entity relationships directly reflect the core information in the text and can reduce information redundancy, they can be used as key elements for comparison to improve the efficiency and accuracy of the comparison.

[0018] Optionally, the contract tag is obtained in the following way:

[0019] Determine the review classification points based on the contract type;

[0020] Based on the aforementioned review and classification points, the corresponding contract content is extracted from historical contract texts as contract tags.

[0021] In the above implementation process, review classification points are determined according to the contract type, and then contract tags are extracted based on the review classification points. This allows for the construction of contract tags for different review classification points, thereby enabling a more comprehensive review of contract texts and improving the accuracy of the review.

[0022] Optionally, the step of extracting text fragments from the contract text to be approved includes:

[0023] The self-edited content is identified from the contract text to be approved, which is generated based on the contract template and the self-edited content;

[0024] Extract text fragments from the self-edited content.

[0025] In the above implementation process, since the self-edited content is content edited by the user, it needs to be given priority approval. Therefore, the self-edited content can be identified from the contract text to be approved, and then the text fragments in the self-edited content can be extracted for approval. This eliminates the need to approve the entire contract text to be approved, which can improve approval efficiency.

[0026] Optionally, the step of extracting text fragments from the contract text to be approved includes:

[0027] The text of the contract to be approved is compared with the text of the historical contract to determine the differences between the contracts.

[0028] Extract text fragments from the contract differences.

[0029] In the above implementation process, text fragments are extracted after comparing the contract with historical contract texts to identify differences. This allows for approval to be conducted only on the differences, thereby improving approval efficiency.

[0030] Optionally, after approving the matching text fragments using the approval rules configured by the contract tag and obtaining the approval result, the process further includes:

[0031] Determine the clause type to which the text fragment belongs;

[0032] The approver corresponding to the text fragment is determined based on the clause type;

[0033] The approval result of the text fragment is sent to the corresponding approver for further approval.

[0034] In the above implementation process, the clause type to which the text fragment belongs is automatically identified, and then sent to the corresponding approver for further approval, thereby improving the accuracy of the approval process.

[0035] Secondly, embodiments of this application provide a contract management device, the device comprising:

[0036] The information extraction module is used to extract text fragments from the contract text to be approved;

[0037] The information matching module is used to match the text fragment with pre-built contract tags to determine the contract tags that the text fragment matches, wherein the contract tags refer to contract content extracted from historical contract texts;

[0038] The approval module is used to approve text fragments that match the contract tags according to the approval rules configured therein, and to obtain the approval result.

[0039] Thirdly, embodiments of this application provide an electronic device, including a processor and a memory, wherein the memory stores computer-readable instructions, and when the computer-readable instructions are executed by the processor, the steps of the method provided in the first aspect above are performed.

[0040] Fourthly, embodiments of this application provide a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, performs the steps of the method provided in the first aspect above.

[0041] Fifthly, embodiments of this application provide a computer program product, including computer program instructions, which, when read and executed by a processor, perform the steps of the method provided in the first aspect above.

[0042] Other features and advantages of this application will be set forth in the following description and will be apparent in part from the description or may be learned by practicing embodiments of this application. The objectives and other advantages of this application may be realized and obtained by means of the structures particularly pointed out in the written description, claims, and drawings. Attached Figure Description

[0043] To more clearly illustrate the technical solutions of the embodiments of this application, the accompanying drawings used in the embodiments of this application will be briefly introduced below. It should be understood that the following drawings only show some embodiments of this application and should not be regarded as a limitation of the scope. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.

[0044] Figure 1 A structural block diagram of a contract management system provided in this application embodiment;

[0045] Figure 2 A schematic diagram illustrating the specific workflow of a contract management system provided in this application embodiment;

[0046] Figure 3 A flowchart illustrating a contract management method provided in this application embodiment;

[0047] Figure 4 A structural block diagram of a contract management device provided in an embodiment of this application;

[0048] Figure 5 This is a schematic diagram of the structure of an electronic device for performing a contract management method, provided as an embodiment of this application. Detailed Implementation

[0049] The technical solutions in the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings.

[0050] It should be noted that the terms "system" and "network" in the embodiments of this invention can be used interchangeably. "Multiple" refers to two or more; therefore, in the embodiments of this invention, "multiple" can also be understood as "at least two". "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, and B existing alone. Additionally, the character " / ", unless otherwise specified, generally indicates that the preceding and following related objects have an "or" relationship.

[0051] It should also be noted that all actions involving the acquisition of signals, information, or data in this application are carried out in compliance with the relevant data protection laws and policies of the country where the application is located, and with the authorization granted by the owner of the relevant device.

[0052] For large group enterprises, many currently use contract management systems for contract uploading, approval, and management. However, the contract approval process currently relies on designated personnel to review the contract text. Current contract management systems require multiple steps from staff during the approval process, resulting in low efficiency.

[0053] The defects in the above-mentioned prior art solutions are all results obtained by the inventors after practice and careful research. Therefore, the discovery process of the above problems and the solutions proposed by the embodiments of the present invention in the following text should be considered as contributions made by the inventors to the present invention.

[0054] To address the aforementioned technical issues, this application provides a contract management method. This method extracts multiple text fragments from the contract text to be approved, then matches each text fragment with pre-built contract tags to determine the matching contract tag. This contract tag refers to the contract content extracted from historical contract texts. Finally, the method uses approval rules configured for the contract tags to approve the matching text fragments, thereby obtaining the approval result. In this solution, by pre-building contract tags and configuring corresponding approval rules for each tag, the corresponding approval rules can be quickly determined and approved by matching the text fragments of the contract text to be approved with the contract tags, resulting in higher approval efficiency. Furthermore, by splitting the contract text to be approved into text fragments, the accuracy of detailed approval within the contract text can be improved. Therefore, this approval method can balance approval efficiency and accuracy.

[0055] To improve the efficiency of contract creation, approval, and signing, this solution provides a contract management system. Users can conduct the entire process of contract drafting, approval, signing, archiving, and performance within the contract management system. Furthermore, the system allows for effective monitoring and management of all aspects of this process through information technology, thereby improving work efficiency and reducing the error rate.

[0056] like Figure 1 As shown, Figure 1 The schematic diagram of the architecture of a contract management system 10 provided in this application embodiment can be roughly divided into the following modules: contract drafting module 11, contract approval module 12, contract signing module 13, contract archiving module 14, and contract performance module 15.

[0057] The contract drafting module 11 provides a template library, contract forms, and a clause library. Contract forms are forms that record contract-related information, such as templates and clauses for various types of contracts. The template library includes templates for various types of contracts, and the clause library includes clauses for various types of contracts. When creating a contract text, the drafter can determine the required information, such as templates and clauses, by querying the contract forms. Then, they can find suitable templates from the template library and suitable clauses from the clause library, and quickly generate a contract template with a single click. The drafter can edit the contract template online, for example, by filling in the corresponding contract content in the editable areas of the template, and then generating a contract text.

[0058] The contract approval module 12 can be used to approve the contract text created by the contract drafter online and output the approval result. The contract approval process in this solution is completed by the contract approval module 12. The approval process will be described in detail in subsequent embodiments.

[0059] The contract signing module 13 can be used to send online signature requests to signatories via email, SMS, or other means after the contract text has been approved. Depending on the type of contract generated by the contract drafter and the signing method, different signing platforms can be provided. The signing platform can integrate multiple signing technologies such as E-Sign and DocuSign, enabling online signing both domestically and internationally. Furthermore, the platform can manage important information such as signatures and seals, storing signing records including signing time, signing action, and signatory for easy review.

[0060] To improve contract signing efficiency, a preset authorization mechanism can be used to allow users to automatically sign contracts after approval without additional confirmation. That is, after a contract is approved, some authorized users can automatically sign the contract without needing confirmation from the contract drafter again.

[0061] To ensure the security of contract signing, some implementations can also utilize blockchain technology to ensure the immutability and traceability of contract signing. This involves deploying the contract signing module on the blockchain, and after signing, the authenticity and accuracy of the signing can be verified through various nodes on the blockchain.

[0062] In some other implementations, multi-factor authentication can be introduced into the signing process, including information known to the user, such as passwords, PIN codes, or security questions; items owned by the user, such as mobile phones, tokens, or smart cards; and the user's biometrics, such as fingerprints, facial recognition, or voiceprints, to enhance security.

[0063] The contract signing module 13 can also be used to identify user signing behaviors, such as mouse movements, key presses, and page dwell time, and then identify abnormal signing patterns to prevent fraud. This can be achieved using a neural network model to identify abnormal signing patterns based on user signing behavior.

[0064] To further ensure the security of contract signing, behavioral biometric technologies, such as mouse motion analysis or keyboard typing rhythm analysis, can be used to add a layer of security verification. Alternatively, suspicious devices can be identified and blocked by analyzing the hardware and software characteristics of the device.

[0065] The contract archiving module 14 is used to intelligently identify contract texts according to predefined rules after contract signing, thereby classifying and storing the contract texts based on contract type. Alternatively, it can identify contract clauses within the contract text, classify the type of each clause, and store the clauses according to their type. Furthermore, it can update the clause library according to type. For example, initially, the clause library may only contain a small number of manually added clauses. As the system runs, contract clauses can be extracted from the contract text and added to the clause library, thus achieving automatic updates and maintenance of the clause library.

[0066] The contract performance module 15 is used to intelligently identify the performance clauses in the contract text, automatically set performance tasks, such as payment tasks, and then send the performance tasks to the corresponding responsible persons, thereby realizing a closed loop for tracking performance tasks.

[0067] The contract performance module 15 can also automatically collect key data during the contract performance process by integrating with the enterprise's resource planning (ERP) system, customer relationship management (CRM) system, and other related business systems. It then identifies key data within the contract, sets monitoring points, and ensures that performance at each stage can be tracked in real time. As contract performance progresses, the system automatically updates the performance status, including completed, in progress, and overdue tasks.

[0068] To make it easier for users to view the progress of their contracts, the progress can be displayed intuitively on the user interface, such as with a Gantt chart, progress bar, or color coding, so that users can quickly grasp the status of their contracts.

[0069] In addition, key time reminders can be preset according to the contract terms, such as payment deadlines and service delivery dates.

[0070] The specific working process of the contract management system 10 can be described as follows: Figure 2 As shown.

[0071] In some implementations and application scenarios, the contract text can refer to a warranty agreement. The contract management system 10 can also extract key information from the warranty agreement and update it to the product warranty database, such as updating the product warranty period. The database is stored in the quality management system. When performing after-sales repairs, the after-sales service system can call the key information of the product's warranty agreement in the quality management system and then determine whether the repair is within or outside the warranty period based on the key information. This allows the contract management system to automatically extract key information from the warranty agreement, avoiding errors that may occur with manual input, improving data accuracy and consistency. The key information is automatically updated to the quality management system's database, reducing manual steps and improving work efficiency. Furthermore, after-sales repairs can directly access key information from the database without needing to consult paper contracts or perform other cumbersome queries. This allows personnel to quickly determine whether the repair is within the warranty period, enabling after-sales service personnel to provide more accurate after-sales service to consumers more quickly and improving customer satisfaction.

[0072] Understandably, for quality assurance agreements, contract drafting, approval, signing, archiving, and performance can also be carried out through the contract management system 10. Extracting key information and updating it in the quality management system can be done through the contract archiving module 14.

[0073] The following section will focus on a detailed introduction to the contract approval process.

[0074] Please refer to Figure 3 , Figure 3 A flowchart of a contract management method provided in this application embodiment, the method including the following steps:

[0075] Step S110: Extract text fragments from the contract text to be approved.

[0076] The contract text to be approved here can be the contract text created by the contract drafter through the contract drafting module. After the contract drafter creates the contract text, the contract text automatically enters the contract approval stage. The approver can click the "Risk Review" button in the contract management system to trigger the contract approval process, that is, to approve the contract text to be approved according to the contract management method provided in this solution, so as to realize the risk review of the contract text to be approved.

[0077] To ensure thorough review of every detail in the contract text and improve the comprehensiveness and accuracy of the approval process, text fragments can be extracted from the contract text. These fragments can be sentences, words, paragraphs, etc. If the fragment is a paragraph, the contract text can be divided into multiple paragraphs. If the fragment is a word, it can be divided into multiple words. To divide words, the contract text can first be divided into paragraphs, then into sentences, and finally, words can be extracted from those sentences. If the fragment is a sentence, the contract text can be divided into multiple sentences.

[0078] Step S120: Match the text fragment with pre-built contract tags to determine the contract tags that the text fragment matches.

[0079] After obtaining multiple text fragments of the contract text to be approved, each text fragment can be matched with pre-built contract tags. Contract tags refer to contract content extracted from historical contract texts. Historical contract texts can be contract texts of the same type as the contract text to be approved; they can also refer to all previous contract texts or contract texts from a previous period; or they can be contract texts created and approved by other contract drafters.

[0080] Understandably, in the initial stage of the contract management system's operation, there may be few historical contract texts, so some contract tags can be manually constructed. As the system runs, each time a contract text is created, new contract content can be extracted from the contract text to construct contract tags.

[0081] Contract tags can represent a section of contract text with specific intellectual meaning, such as content related to the contract parties or confidentiality clauses—content requiring key approval. Alternatively, contract tags can also be derived from the breakdown of historical contract text, consisting of text fragments such as paragraphs or sentences. To describe a contract tag, its fields can include: name, description, type, parent tag, tag status (e.g., availability), approval rules, creator, and creation information. In other words, after obtaining a contract tag, these tag fields can be used to describe it.

[0082] When matching text fragments with contract tags, each text fragment can be matched with each contract tag one by one, thus matching the contract tag that matches each text fragment.

[0083] Step S130: Use the approval rules configured in the contract tag to approve the matching text fragments and obtain the approval result.

[0084] The approval rules can be configured for contract tags based on their specific content. Each contract tag has at least one approval rule. If a contract tag has multiple approval rules, then approval must be based on all of them. For example, if the contract tag concerns payment, the approval rules can be configured to approve specific payments, such as whether payment exists, whether payment is greater than x1, or whether payment is less than x2.

[0085] Therefore, when approving a text fragment, the approval rules of the contract tags matched with that text fragment are used. For example, if the contract tags matched with text fragment 1 include contract tag 1 and contract tag 2, then when approving text fragment 1, the approval rules of contract tag 1 and contract tag 2 are used to approve text fragment 1 separately to obtain the approval result.

[0086] The approval result can include whether the text fragment conforms to the corresponding approval rules. For example, when approving payment, the approval result can include information such as whether payment exists or whether payment is greater than x1. The approval result can also include whether the approval is approved or not. For approval results that are not approved, the reason for the disapproval can also be included.

[0087] To help approvers understand the risks associated with the approval results, the contract approval module can also determine and output corresponding risk information based on the approval result when the approval fails. The risk information may include risk warnings, risk levels, risk names, and modification suggestions.

[0088] The following table shows the risk information output after approving the text fragment (regarding contract backdating):

[0089]

[0090] The risk point name can be related to the content of the contract label, and the risk level is determined based on the approval result. For example, different risk levels can be set in advance for different approval results, so that the risk level of the current text fragment can be quickly determined.

[0091] It is understandable that the risk point name can refer to the name of the contract label. Different risk levels, risk warnings, and modification suggestions can be set in advance for each contract label based on its approval rules and the envisioned approval results. In this way, for the approval result of each text segment, corresponding risk information can be output so that the approver is aware of the risk situation of that text segment. This risk information can then be fed back to the contract drafter so that the drafter can modify or improve the contract text to be approved. After modification or improvement, the modified or improved text segment can be approved again.

[0092] In the above implementation process, by pre-constructing contract tags and configuring corresponding approval rules for these tags, the approval rules can be quickly determined and approved by matching text fragments of the contract text to be approved with contract tags, resulting in higher approval efficiency. Furthermore, by splitting the contract text to be approved into text fragments, the accuracy of detailed approval within the contract text can be improved. Therefore, the approval method in this solution can balance approval efficiency and accuracy.

[0093] Building upon the above embodiments, to improve the accuracy of matching text fragments and contract tags, for example, if a text fragment matches multiple contract tags, but some of these tags are not properly matched, the accuracy of the approval result will be affected when using the approval rules for those inappropriate contract tags. For instance, if a text fragment about payment for goods matches a contract tag about service fees, approving the payment for goods using the service fee approval rules would be erroneous. Therefore, one solution to this problem is to consider approval as successful as long as at least one of the approval rules is met. Another solution is to determine the final matching contract tag from multiple matching contract tags.

[0094] Therefore, text fragments can also be matched with pre-built contract tags to determine the contract tags that match the text fragments. If there are at least two contract tags that match the text fragments, the key elements of the text fragments can be extracted and matched with the key elements corresponding to the contract tags that match the text fragments to determine the final matched contract tags.

[0095] Among them, the methods for matching the content of each text fragment with each contract tag include cosine similarity matching, Hamming distance matching, common word matching, Jaccard similarity matching, word embedding similarity matching, TF-IDF (Term Frequency-Inverse Document Frequency) similarity matching, and text matching based on neural network models.

[0096] Specifically, the principle of cosine similarity matching is to evaluate the similarity between two text vectors, namely a text fragment and a contract label, by calculating the cosine value of the angle between them. It can be considered that when the similarity is greater than a set threshold, the two are considered to be matched.

[0097] The principle of Hamming distance matching is to convert text fragments and contract tags into fixed-length binary bytes, and then evaluate the similarity between the two by calculating the Hamming distance between the hash values ​​of the two binary bytes. It can be considered that when the similarity is greater than a set threshold, the two are considered to be matched.

[0098] The principle of shared word matching is to calculate the total number of characters of the words shared by the text fragment and the contract tag, divided by the longest document character count to evaluate the similarity between the two. It can be considered that when the similarity is greater than a set threshold, the two are considered to be matched.

[0099] The principle of Jaccard similarity matching is to calculate the ratio between the size of the intersection of two text sets, text fragments and contract tags, and the size of their union to evaluate the similarity between them. It can be considered that when the similarity is greater than a set threshold, the two are considered to be matched.

[0100] The principle of word embedding similarity matching is to use a pre-trained word embedding model to convert text fragments and contract labels into word vector representations, and to calculate the similarity between word vectors of two texts. Here, the similarity can be calculated using cosine distance and Euclidean distance. It can be considered that when the similarity is greater than a set threshold, it means that the two are matched.

[0101] The principle of TF-IDF similarity matching is to measure the similarity of texts by calculating the IF-IDF weights of words in the text fragment and the contract label. It can be considered that when the similarity is greater than a set threshold, the two are matched.

[0102] The principle of text matching based on neural network models is to use neural network models (such as convolutional neural network models, long short-term memory network models, etc.) to encode the input text fragments and contract tags, and calculate the similarity by comparing the encoded representations. It can be considered that when the similarity is greater than a set threshold, the two are considered to be matched.

[0103] Since content-based matching may be a coarse match, and each text fragment may match multiple contract tags, to achieve more precise matching, key elements of the text fragment with multiple matching contract tags can be extracted. These key elements are then matched against the key elements of the matching contract tags to determine the final matched contract tag. Understandably, if a text fragment only matches one contract tag after content matching, the accuracy of the matched contract tag can be determined using key elements. If it is inaccurate, the key elements can be used for rematching. Alternatively, the contract tag that matches the content can be directly used as the final matched contract tag.

[0104] Among them, key elements can be some key information extracted from the content, such as core nouns, subject nouns, subject modifiers, object nouns, object modifiers, verbs, core entities, entity relationships, and other key elements.

[0105] The key elements corresponding to each contract tag can be extracted and stored in advance. By matching the key elements one by one, the most matching contract tag can be found.

[0106] In other implementations, in order to obtain the final matching contract tag, the contract tag with the highest similarity can be determined directly after content matching. In this way, the text fragment can be approved using only the approval rule corresponding to a single contract tag.

[0107] In the above implementation process, the text fragments are first roughly matched with the contract tags. When multiple contract tags are matched, a fine match is then performed using key elements, which can improve matching efficiency and accuracy.

[0108] Based on the above embodiments, in the method of extracting key elements of a text fragment, the text fragment can be segmented and part-of-speech tagging can be performed to obtain segmentation results and part-of-speech tagging results. Then, based on the part-of-speech tagging results, entity recognition and entity relationship extraction can be performed on each segmented word in the segmentation results to obtain the entity and entity relationship corresponding to each segmented word as the key elements of the text fragment.

[0109] In this implementation, key elements can include entities and entity relationships. Key elements of a contract tag can also include entities and entity relationships. A contract tag can be used to extract multiple key elements, i.e., configure relevant functions (name, input, output, description) and extraction rules for element extraction.

[0110] Understandably, the methods for extracting key elements from text fragments and contract tags are similar. Here, we will take the extraction of key elements from text fragments as an example for explanation.

[0111] First, the text fragment is segmented and tagged with parts of speech. Segmentation is done by breaking down the text into word groups. A word segmentation tool can be used for this. Alternatively, a dictionary containing all keywords and common words can be built for the contract domain for matching and segmentation. Then, the text fragment is segmented from left to right and from right to left. Based on the dictionary, matching is performed from the beginning to the end of the sentence, matching the longest word each time. If a match is successful, the word is recorded and the current matching position is updated to the end of the word. If a match fails, the last character of the current word is removed, and the matching is retried until a match is successful or the word is empty. This matching step is repeated until the entire text fragment is traversed, yielding the left-to-right segmentation result. The right-to-left segmentation method is similar and will not be repeated for brevity.

[0112] Then, compare the forward and reverse segmentation results, selecting the result with fewer words. If the number of words is the same, calculate the average word length for each segmentation result and select the segmentation method with the longer average length. If both the number of words and the average word length are the same, further check whether the two segmentation results meet specific rules, such as the completeness of proper nouns. Prioritize retaining the segmentation result containing complete proper nouns. Based on this rule, select the best segmentation result.

[0113] When extracting key elements, the entity types to be identified can be predefined according to the application scenario, such as names of people, companies, places, payments, and organizations. Based on the part-of-speech tagging results, features related to the entity types can be extracted, such as noun phrases and proper nouns. Then, a trained machine learning model (such as a conditional random field, hidden Markov model, or deep learning model) can be used to perform entity recognition on the word segmentation results. The model will determine whether each word belongs to the predefined entity type based on the feature extraction results, thereby achieving entity recognition.

[0114] For entity relation extraction, the types of entity relations to be extracted can be predefined according to the application scenario, such as subject-verb-object relations, attribute-value relations, etc. Then, based on the part-of-speech tagging results and entity information, features related to the relation type are extracted, such as verb phrases and relative positions between entities. Then, a trained relation extraction model (such as rule-based methods, machine learning models, deep learning models, etc.) can be used to extract relations from the word segmentation results. The model will determine whether there is a predefined relation type between entities based on the feature extraction results, thereby realizing the extraction of entity relations. Entity relations are like the subject-object relation in a sentence: "The unit price of mileage is 100 yuan / km", that is, the relationship between "unit price of mileage" and "100 yuan / km".

[0115] In the above implementation process, since entities and entity relationships directly reflect the core information in the text and can reduce information redundancy, they can be used as key elements for comparison to improve the efficiency and accuracy of the comparison.

[0116] Based on the above embodiments, when approving text fragments, the approval rules corresponding to the contract tag can be found according to the key elements corresponding to the contract tag, and then the approval rules can be used to approve the matching text fragments to obtain the approval results.

[0117] In some implementations, key elements extracted from contract tags can be stored in a variable, such as a Context variable. For example, "After receiving a service request from Party A, Party B will respond to the service request within 0.5 hours." A "Response Timeliness Value Extraction" element is added to the "Response Timeliness" tag, and the extracted specific value is filled into the Context variable: Context.After-sales Service Agreement.[Response Timeliness].

Response Timeliness Value

[0118] Understandably, each contract tag can correspond to a Context variable to store the corresponding key elements. Therefore, when comparing key elements, the key elements of the extracted text fragment can be compared with the key elements in the Context variable of the matched contract tag, which can improve the comparison efficiency.

[0119] When configuring the corresponding approval rules for contract tags, you can configure the key elements in the Context variable of each contract tag. This way, you can directly find the corresponding approval rules by searching for the key elements of the contract tag, and then use the approval rules to approve the text fragments.

[0120] In the above implementation process, by finding the approval rules of the key elements corresponding to the contract tags, the approval rules of each contract tag can be found quickly, and then approval can be carried out, which improves the approval efficiency.

[0121] Based on the above embodiments, in order to construct more comprehensive contract tags, review classification points can be determined according to the contract type, and then the corresponding contract content can be extracted from historical contract texts as contract tags according to the review classification points.

[0122] For example, a large number of review classification points can be pre-configured according to various contract types. The review classification points include information such as review point name, review point type, relevant contract tags, and review point description.

[0123] An example of specific information for one of the review categories is shown in the table below:

[0124]

[0125] Therefore, multiple review categories can be pre-configured based on contract type, and then the corresponding contract content can be extracted from historical contract texts based on these categories. For example, if the review category mentioned above is "after-sales service period agreement," then when extracting contract tags, relevant content regarding the after-sales service period agreement can be found in historical contract texts, and that content can be extracted as contract tags. Alternatively, corresponding contract tags can be manually constructed based on the review category, and corresponding approval rules can be configured for each contract tag. Understandably, one review category may extract multiple contract tags, and these multiple contract tags can correspond to the approval rules of the same review category.

[0126] When configuring approval rules, the system supports multi-level nested tree or graphical approval rules. The logic of each rule is independent and can be executed in parallel. Some approval rules also allow for the configuration of sub-review items. When configuring sub-review items, you can choose to copy and import other existing sub-review items; the import will automatically include any sub-sub-review items under that existing sub-review item. Sub-review items can also be created and configured, including inputting information such as name, type, and description. Sub-review items can be divided into two categories: function-based and conditional sub-review items.

[0127] Functional sub-review items can use algorithmic functions to implement their review logic.

[0128] Conditional sub-items can implement their review logic by creating conditional expressions. A conditional expression consists of a comparison variable, an operator, and a comparison value. The comparison variable can be selected from the corresponding key elements in the Context variable. Operators include: is_null, <, >, =, contain, do not contain, regular expressions, etc.

[0129] For judging approval rules, it supports input of type (numeric, yes / no, string) and supports logical combinations such as AND and OR. During approval, the approval rule is branched based on the corresponding judgment result. For example, "Identify whether [response time limit value] exists". If yes, the next review item is executed; if no, the approval result is returned.

[0130] Approval Result Configuration: Configure the corresponding approval result display fields as needed, and also support using Context variables as placeholders for dynamic content filling configuration. For example, the returned approval result name: Response Time Too High; Location: Element / After-sales Service Agreement / [Response Time] /

Response Time Value

[0131] Understandably, the approval rules corresponding to each of the above review categories can be flexibly configured according to actual approval needs, that is, the approval rules for each contract tag can be flexibly configured according to actual approval needs.

[0132] In the above implementation process, review classification points are determined according to the contract type, and then contract tags are extracted based on the review classification points. This allows for the construction of contract tags for different review classification points, thereby enabling a more comprehensive review of contract texts and improving the accuracy of the review.

[0133] Based on the above embodiments, since the contract text to be approved is generated based on the contract template and editable content, and the contract template is generated by selecting the corresponding templates and clauses from the template library and clause library, and the templates and clauses in the template library and clause library can be pre-approved before being stored, the content of the templates and clauses in the contract text to be approved does not actually need to be approved again.

[0134] The terms stored in the terms library are shown in the table below. Understandably, only a portion of the terms are shown in the table below. In practice, the terms library can store a large number of terms for users to choose from.

[0135]

[0136]

[0137] To improve approval efficiency, self-edited content can be identified from the contract text to be approved. The contract text to be approved is generated based on the contract template and self-edited content, and then multiple text fragments are extracted from the self-edited content.

[0138] Understandably, it is possible to pre-set the self-editable content corresponding to different contract types, so that the self-editable content can be quickly determined according to the contract type of the contract text to be approved.

[0139] Alternatively, text difference algorithms (such as longest common subsequence, dynamic programming, etc.) can be used to calculate the differences between the contract template and the contract text to be approved. This difference is the self-edited content. Of course, the self-edited content can include some content from the contract template. That is, the self-edited content can be extracted in paragraphs, which makes it easier to obtain more complete content for approval in the subsequent approval process.

[0140] When extracting multiple text fragments from the contract text awaiting approval or self-edited content, the text can be segmented into multiple fragments based on punctuation marks (such as periods, commas, semicolons, etc.). Alternatively, text fragment segmentation can be performed based on semantic segmentation. For more precise segmentation, natural language processing (NLP) techniques can be used for semantic analysis, such as using dependency parsing to identify sentences or phrases.

[0141] In the above implementation process, since the self-edited content is content edited by the user, it needs to be given priority approval. Therefore, the self-edited content can be identified from the contract text to be approved, and then the text fragments in the self-edited content can be extracted for approval. This eliminates the need to approve the entire contract text to be approved, which can improve approval efficiency.

[0142] Based on the above embodiments, in order to improve approval efficiency, in the method of extracting multiple text fragments from the contract text to be approved, the contract text to be approved can be compared with historical contract texts to determine the contract differences, and then multiple text fragments can be extracted from the contract differences.

[0143] Here, text difference algorithms (such as longest common subsequence, dynamic programming, etc.) can also be used to calculate the contract differences between historical contract texts and the contract text to be approved. The historical contract texts can be all historical contract texts, historical contract texts of the same contract type as the contract text to be approved, or the most recent historical contract text. Understandably, historical contract texts are those that have been approved. If there are multiple historical contract texts, the contract differences between each historical contract text and the contract text to be approved can be obtained. Then, multiple text fragments can be extracted from each contract difference content. The method for extracting text fragments from the contract difference content is similar to the method described above for extracting text fragments from the contract text to be approved or self-edited content; for the sake of brevity, it will not be repeated here.

[0144] Understandably, if the contract drafter's initial draft of the contract to be approved is not in text format, it is necessary to convert the contract to a text format before proceeding with the subsequent approval process.

[0145] In addition, during the approval process, after identifying the self-edited content, the self-edited content can be matched with the contract template for a compatibility review. This allows for verification of whether the self-edited content matches the contract template, and thus reviews whether the contract drafter has selected a suitable contract template and filled in the appropriate self-edited content.

[0146] In the above implementation process, text fragments are extracted after comparing the contract with historical contract texts to identify differences. This allows for approval to be conducted only on the differences, thereby improving approval efficiency.

[0147] Based on the above embodiments, in order to achieve a more rigorous and accurate approval process, after obtaining the approval results, it is also possible to determine the clause type to which each text fragment belongs, determine the approver corresponding to each text fragment according to the clause type, and then send the approval results of each text fragment to the corresponding approver for further approval.

[0148] Among these methods, machine learning models can be used to identify the type of clauses described in each text fragment. If some text fragments are not clauses, then no further approval is required. For text fragments that are identified as clause types, then further approval is required.

[0149] The contract management system can pre-store the correspondence between clause types and approvers. Therefore, the appropriate approver can be determined based on the clause type, and the approval result of the text fragment is sent to the corresponding approver for re-approval. During re-approval, the approver can verify the accuracy of the approved text fragment based on the approval result. If accurate, an approval message is returned, and the process can proceed to the next step. If inaccurate, an approval rejection message is returned. In this case, the contract approval module can return the rejection message to the contract drafter, who can then modify the contract text before resubmitting it for approval.

[0150] In the above implementation process, the clause type to which the text fragment belongs is automatically identified, and then sent to the corresponding approver for further approval, thereby improving the accuracy of the approval process.

[0151] In some implementations, the contract management system of this solution may also include a contract ledger module. The contract ledger module can be used to manage the approved contract texts. For example, the contract ledger module can use neural network models or information extraction algorithms to extract key information from the approved contract texts, including information such as time, amount, and company. Then, the extracted key information can be automatically entered into the contract ledger to generate the contract ledger for the contract text. In this way, the contract text can be conveniently managed through the contract ledger.

[0152] In some implementations, the contract management system may also provide an intelligent question-and-answer module, which can integrate an intelligent question-and-answer model. Users can input the questions they want to query through the intelligent question-and-answer module to achieve intelligent contract query.

[0153] In some implementations, the contract management system can also automatically parse key information from approved contract texts and interact with the after-sales service system. It can also create corresponding work orders based on the contract texts and send the work orders to the relevant personnel for processing via email, SMS, or other means, so as to achieve timely reminders of contract execution.

[0154] Please refer to the above method embodiments. Figure 4 , Figure 4 This is a structural block diagram of a contract management device 200 provided in an embodiment of this application. The device 200 may be a module, program segment, or code on an electronic device. It should be understood that this device 200 is similar to the one described above. Figure 3 The method implementation corresponds to this and can be executed. Figure 3 The various steps involved in the method embodiment and the specific functions of the device 200 can be found in the description above. To avoid repetition, detailed descriptions are omitted here.

[0155] Optionally, the device 200 includes:

[0156] Information extraction module 210 is used to extract text fragments from the contract text to be approved;

[0157] The information matching module 220 is used to match the text fragment with pre-built contract tags to determine the contract tags that the text fragment matches, wherein the contract tags refer to contract content extracted from historical contract texts;

[0158] The approval module 230 is used to approve the text fragments that match the contract tag according to the approval rules configured therein, and to obtain the approval result.

[0159] Optionally, the information matching module 220 is used to perform content matching between the text fragment and pre-built contract tags to determine the contract tags matched by the text fragment; if the text fragment matches at least two contract tags, extract the key elements of the text fragment; and match the key elements with the key elements corresponding to the contract tags matched by the text fragment to determine the final matched contract tags.

[0160] Optionally, the information matching module 220 is used to perform word segmentation and part-of-speech tagging on the text fragment to obtain word segmentation results and part-of-speech tagging results; based on the part-of-speech tagging results, entity recognition and entity relationship extraction are performed on each word in the word segmentation results to obtain the entity and entity relationship corresponding to each word as the key elements of the text fragment.

[0161] Optionally, the information extraction module 210 is further configured to determine the review classification point according to the contract type; and extract the corresponding contract content from the historical contract text as contract tags according to the review classification point.

[0162] Optionally, the information extraction module 210 is used to identify self-edited content from the contract text to be approved, the contract text to be approved being generated based on the contract template and the self-edited content; and to extract text fragments from the self-edited content.

[0163] Optionally, the information extraction module 210 is used to compare the text of the contract to be approved with the text of the historical contract to determine the differences in the contract; and to extract text fragments from the differences in the contract.

[0164] Optionally, the approval module 230 is further configured to determine the clause type to which the text fragment belongs;

[0165] The approver corresponding to the text fragment is determined based on the clause type; the approval result of the text fragment is sent to the corresponding approver for further approval.

[0166] It should be noted that those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working process of the system and apparatus described above can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here.

[0167] Please refer to Figure 5 , Figure 5 This is a schematic diagram of the structure of an electronic device for executing a contract management method, provided in an embodiment of this application. The aforementioned contract management system can run in this electronic device, which may include: at least one processor 310, such as a CPU, at least one communication interface 320, at least one memory 330, and at least one communication bus 340. The communication bus 340 is used to implement communication between these components. In this embodiment, the communication interface 320 is used for signaling or data communication with other node devices. The memory 330 may be a high-speed RAM or a non-volatile memory, such as at least one disk storage device. Optionally, the memory 330 may also be at least one storage device located remotely from the aforementioned processor. The memory 330 stores computer-readable instructions. When the computer-readable instructions are executed by the processor 310, the electronic device performs the aforementioned... Figure 3 The method and process are shown.

[0168] Understandable. Figure 5 The structure shown is for illustrative purposes only; the electronic device may also include components that are more advanced than those shown. Figure 5 The more or fewer components shown, or having the same Figure 5 The different configurations shown. Figure 5 The components shown can be implemented using hardware, software, or a combination thereof.

[0169] This application provides a computer-readable storage medium storing a computer program thereon, which, when executed by a processor, performs the following... Figure 3 The method process executed by the electronic device in the illustrated method embodiment.

[0170] This embodiment discloses a computer program product, which includes a computer program stored on a non-transitory computer-readable storage medium. The computer program includes program instructions, and when the program instructions are executed by a computer, the computer can perform the methods provided in the above-described method embodiments, such as including:

[0171] Extract text fragments from the contract text awaiting approval;

[0172] The text fragment is matched with pre-built contract tags to determine the contract tags that the text fragment matches, wherein the contract tags refer to contract content extracted from historical contract texts;

[0173] The approval rules configured in the contract tag are used to approve the matching text fragments to obtain the approval result.

[0174] In summary, this application provides a contract management method, apparatus, electronic device, storage medium, and program product. This method pre-constructs contract tags and configures corresponding approval rules for these tags. This allows for rapid determination of the corresponding approval rules by matching text fragments of the contract text to be approved with contract tags, resulting in higher approval efficiency. Furthermore, by splitting the contract text to be approved into text fragments, the accuracy of detailed approval within the contract text can be improved. Therefore, this approval method balances both efficiency and accuracy.

[0175] In the embodiments provided in this application, it should be understood that the disclosed apparatus and methods can be implemented in other ways. The apparatus embodiments described above are merely illustrative. For example, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. Furthermore, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Additionally, the displayed or discussed mutual couplings, direct couplings, or communication connections may be through some communication interfaces; indirect couplings or communication connections between devices or units may be electrical, mechanical, or other forms.

[0176] Furthermore, the units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0177] Furthermore, the functional modules in the various embodiments of this application can be integrated together to form an independent part, or each module can exist independently, or two or more modules can be integrated to form an independent part.

[0178] In this document, relational terms such as first and second are used only to distinguish one entity or operation from another entity or operation, without necessarily requiring or implying any such actual relationship or order between these entities or operations.

[0179] The above description is merely an embodiment of this application and is not intended to limit the scope of protection of this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the scope of protection of this application.

Claims

1. A contract management method, characterized in that, The method includes: Extract text fragments from the contract text awaiting approval; The text fragment is matched with pre-built contract tags to determine the contract tags that the text fragment matches, wherein the contract tags refer to the contract content extracted from historical contract texts; The approval rules configured in the contract tag are used to approve the matching text fragments to obtain the approval result.

2. The method according to claim 1, characterized in that, The step of matching the text fragment with pre-built contract tags to determine the contract tags that the text fragment matches includes: The text fragment is matched with pre-built contract tags to determine the contract tags that the text fragment matches; If the text fragment matches at least two contract tags, extract the key elements of the text fragment. The key elements are matched with the key elements corresponding to the contract tags that match the text fragment to determine the final matched contract tags.

3. The method according to claim 2, characterized in that, The key elements extracted from the text fragment include: The text fragment is segmented into words and tagged with parts of speech to obtain the segmentation results and part-of-speech tagging results. Based on the part-of-speech tagging results, entity recognition and entity relation extraction are performed on each segment of the word segmentation results to obtain the entity and entity relation corresponding to each segment as the key elements of the text fragment.

4. The method according to any one of claims 1-3, characterized in that, The contract label was obtained in the following manner: Determine the review classification points based on the contract type; Based on the aforementioned review and classification points, the corresponding contract content is extracted from historical contract texts as contract tags.

5. The method according to claim 1, characterized in that, The extraction of text fragments from the contract text to be approved includes: The self-edited content is identified from the contract text to be approved, which is generated based on the contract template and the self-edited content; Extract text fragments from the self-edited content.

6. The method according to claim 1, characterized in that, The extraction of text fragments from the contract text to be approved includes: The text of the contract to be approved is compared with the text of the historical contract to determine the differences between the contracts. Extract text fragments from the contract differences.

7. The method according to claim 1, characterized in that, After the approval rules configured using the contract tag are used to approve the matching text fragments and obtain the approval result, the process further includes: Determine the clause type to which the text fragment belongs; The approver corresponding to the text fragment is determined based on the clause type; The approval result of the text fragment is sent to the corresponding approver for further approval.

8. A contract management device, characterized in that, The device includes: The information extraction module is used to extract text fragments from the contract text to be approved; The information matching module is used to match the text fragment with pre-built contract tags to determine the contract tags that the text fragment matches, wherein the contract tags refer to contract content extracted from historical contract texts; The approval module is used to approve text fragments that match the contract tags according to the approval rules configured therein, and to obtain the approval result.

9. An electronic device, characterized in that, It includes a processor and a memory, the memory storing computer-readable instructions that, when executed by the processor, perform the method as described in any one of claims 1-7.

10. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it performs the method as described in any one of claims 1-7.

11. A computer program product, characterized in that, It includes computer program instructions, which, when read and executed by a processor, perform the method as described in any one of claims 1-7.