CN116702739A - 一种合同文本错误信息的模糊判定方法及装置 - Google Patents
一种合同文本错误信息的模糊判定方法及装置 Download PDFInfo
- Publication number
- CN116702739A CN116702739A CN202310672681.5A CN202310672681A CN116702739A CN 116702739 A CN116702739 A CN 116702739A CN 202310672681 A CN202310672681 A CN 202310672681A CN 116702739 A CN116702739 A CN 116702739A
- Authority
- CN
- China
- Prior art keywords
- text
- paragraphs
- difference
- contract
- run
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 53
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 44
- 238000012545 processing Methods 0.000 claims abstract description 41
- 238000009517 secondary packaging Methods 0.000 claims abstract description 9
- 230000008569 process Effects 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 7
- 238000012986 modification Methods 0.000 claims description 5
- 230000004048 modification Effects 0.000 claims description 5
- 230000000007 visual effect Effects 0.000 abstract description 7
- 238000005538 encapsulation Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 8
- 239000013598 vector Substances 0.000 description 5
- 239000002699 waste material Substances 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 230000007547 defect Effects 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000003780 insertion Methods 0.000 description 2
- 230000037431 insertion Effects 0.000 description 2
- 238000003058 natural language processing Methods 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000012550 audit Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/194—Calculation of difference between files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/103—Formatting, i.e. changing of presentation of documents
- G06F40/117—Tagging; Marking up; Designating a block; Setting of attributes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/169—Annotation, e.g. comment data or footnotes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/186—Templates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/216—Parsing using statistical methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Probability & Statistics with Applications (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种合同文本错误信息的模糊判定方法及装置,首先基于Python‑docx库的二次封装对合同文本进行读写得到多个段落,再将差异比较处理多个段落与合同文本模板中的段落进行对比,计算段落余弦相似度,然后使用差异比较算法按照差异比较处理段落余弦相似度对差异比较处理多个段落与合同文本模板中的段落进行差异比较处理得到文本差异内容和文本差异位置,最后根据差异比较处理文本差异内容和文本差异位置对差异比较处理合同文本进行修改。通过计算文本之间的余弦相似度,配合差异比较算法进行自动文本比对,对审核结果进行自动批注,具有识别准确、速度快、效率高的优点,还能够提供直观和准确的审核结果,减少审核结果的误解和误判的可能性。
Description
技术领域
本申请涉及自然语言处理技术领域,具体而言,涉及一种合同文本错误信息的模糊判定方法及装置。
背景技术
在现有技术中,合同审核的流程依次是相关部门提交合同、人工审核合同、人工批注、返回合同等,这个过程往往会有着很多缺点,例如第一、需要耗费大量的时间成本和人力成本进行审核工作,尤其是对于大量的合同审核,需要海量的人力资源进行处理,增加了企业的成本和管理难度。第二、人力审核的效率低下,人工审核需要进行大量的读取和对比工作,而这些工作可能涉及到多个部门和岗位,需要进行不断的沟通和协调,导致审核流程缓慢,效率低下。第三、由于人力审核过程基于专业人员的经验和主观判断,存在着可能出现错误和漏判的问题。人工审核需要进行大量的对比和判断工作,可能会因为个人观点、知识水平等因素而产生错误或漏判。第四、人工审核的结果不够直观,往往需要对大量的审核数据进行汇总和分析,才能得出合同审核的结论,这不仅增加了审核结果的不确定性,也增加了审核结果的误解和误判的可能性。
因此,现有的合同审核的流程需要耗费大量的时间成本和人力成本,而且还非常容易出现错误和漏判的情况,从而导致一些不必要的争议和纠纷,最终呈现的结果也不够直观简洁。如何解决合同审核过程中存在的人力资源浪费、效率低下、可能出现错误和结果不够直观等问题成为本领域技术人员需要解决的众多问题之一。
发明内容
本申请的目的在于,为了克服现有的技术缺陷,提供了一种合同文本错误信息的模糊判定方法及装置,通过计算文本之间的余弦相似度,配合diff算法进行自动文本比对,并设计程序对审核结果进行自动批注,能够提供更加直观和准确的审核结果,减少审核结果的误解和误判的可能性。
本申请目的通过下述技术方案来实现:
第一方面,本申请提出了一种合同文本错误信息的模糊判定方法,所述方法包括:
基于Python-docx库的二次封装对合同文本进行读写得到多个段落;
将所述多个段落与合同文本模板中的段落进行对比,计算段落余弦相似度;
使用差异比较算法按照所述段落余弦相似度对所述多个段落与合同文本模板中的段落进行差异比较处理得到文本差异内容和文本差异位置;
根据所述文本差异内容和文本差异位置对所述合同文本进行修改。
在一种可能的实施方式中,读写方案包括:按段落读写、按runs读写、按文本读写、按指定文本内容读写和按指定文本索引读写。
在一种可能的实施方式中,所述方法还包括:
将所述段落余弦相似度的最高值作为匹配结果,使用差异比较算法按照所述匹配结果对所述多个段落与合同文本模板中的段落进行处理。
在一种可能的实施方式中,使用差异比较算法按照所述段落余弦相似度对所述多个段落与合同文本模板中的段落进行差异比较处理得到文本差异内容和文本差异位置的步骤,包括:
使用差异比较算法按照所述段落余弦相似度对所述多个段落与合同文本模板中的段落进行插入、删除和匹配得到文本差异内容和文本差异位置;
插入操作为在合同文本中插入新的字符或行;
删除操作为删除合同文本中的字符或行;
匹配操作为将合同文本的字符与合同文本模板的字符,或合同文本的行与合同文本模板的行进行匹配。
在一种可能的实施方式中,差异比较算法在所述匹配操作中通过寻找公共子序列的最大值得到文本差异内容和文本差异位置。
在一种可能的实施方式中,所述根据所述文本差异内容和文本差异位置对所述合同文本进行修改的步骤,包括:
S1、传入起始索引和结束索引,计算出文本差异位置的run列表以及索引;
S2、将run列表中的run拆分为三段:标记前的文字、待标记的目标文字、标记后的文字,run表示一个格式化的文本块;
S3、在原run后面添加一个新run并设置指定颜色和目标文字;
S4、将原run的文字内容修改为标记前面的文字。
S5、如果需要标记的目标文字不是原run的整段文字,需要将标记后面的文字新建一个run并设置为原run的颜色。
S6、重复S3-S5,遍历所有的run。
在一种可能的实施方式中,所述合同文本模板包括工程承包人、工程分包人、签订地点以及签订日期。
第二方面,本申请还提出了一种合同文本错误信息的模糊判定装置,所述装置包括:
读写模块,用于基于Python-docx库的二次封装对合同文本进行读写得到多个段落;
对比模块,用于将所述多个段落与合同文本模板中的段落进行对比,计算段落余弦相似度;
处理模块,用于使用差异比较算法按照所述段落余弦相似度对所述多个段落与合同文本模板中的段落进行差异比较处理得到文本差异内容和文本差异位置;
修改模块,用于根据所述文本差异内容和文本差异位置对所述合同文本进行修改。
第三方面,本申请还提出了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有计算机程序,所述计算机程序由所述处理器加载并执行以实现如第一方面任一项所述的合同文本错误信息的模糊判定方法。
第四方面,本申请还提出了一种计算机可读存储介质,所述存储介质中存储有计算机程序,所述计算机程序由处理器加载并执行以实现如第一方面任一项所述的合同文本错误信息的模糊判定方法。
上述本申请主方案及其各进一步选择方案可以自由组合以形成多个方案,均为本申请可采用并要求保护的方案;且本申请,(各非冲突选择)选择之间以及和其他选择之间也可以自由组合。本领域技术人员在了解本申请方案后根据现有技术和公知常识可明了有多种组合,均为本申请所要保护的技术方案,在此不做穷举。
本申请公开了一种合同文本错误信息的模糊判定方法及装置,首先基于Python-docx库的二次封装对合同文本进行读写得到多个段落,再将差异比较处理多个段落与合同文本模板中的段落进行对比,计算段落余弦相似度,然后使用差异比较算法按照差异比较处理段落余弦相似度对差异比较处理多个段落与合同文本模板中的段落进行差异比较处理得到文本差异内容和文本差异位置,最后根据差异比较处理文本差异内容和文本差异位置对差异比较处理合同文本进行修改。通过计算文本之间的余弦相似度,配合差异比较算法进行自动文本比对,对审核结果进行自动批注,具有识别准确、速度快、效率高的优点,还能够提供直观和准确的审核结果,减少审核结果的误解和误判的可能性。
本发明所达到的技术效果为:
第一、基于对Python-docx库进行二次封装实现对合同文档进行读写,通过封装提供的函数实现更方便的调用,并增加了新的功能。
第二、遍历两个docx文件的每一个段落并计算它们之间的余弦相似度。通过计算相似度,可以找到两个文件中匹配的段落避免在比较大的文档中对整个文档进行比对,从而节省时间和提高比对的准确性。
第三,在找到匹配的段落后,差异比较算法来比较两个段落之间的文本,并得到差异的内容和文本的位置可以更直观地显示出文档中的差异,而不仅仅是显示不同的段落。
第四、标注出来有差异的内容,并使用相关算法在段落的runs之间找到需要修改的文字内容,对文字的格式进行修改。可以更精确地修改文档中的内容,从而提高文档的质量和准确性。
第五、引入自然语言处理技术,实现对合同中的重要信息的自动提取和分析,提高审核的准确性和效率。
附图说明
图1示出了本申请实施例提供的一种合同文本错误信息的模糊判定方法的流程示意图。
具体实施方式
以下通过特定的具体实例说明本申请的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本申请的其他优点与功效。本申请还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本申请的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在现有技术中,现有的合同审核的流程有着如下几个缺点:
第一、背景技术中合同审核过程中存在的准确性和效率问题。
第二、人工审核带来的耗费时间以及浪费人力的问题。
第三、合同审核中专业人员主观判断和经验不足导致的错误和漏判问题。
第四、合同文档的复杂性和不确定性导致的审核困难问题。
第五、审核流程中呈现出的审核结果不够直观,数据量大时对数据进行汇总和分析困难。
因此,如何解决合同审核过程中存在的人力资源浪费、效率低下、可能出现错误和结果不够直观等问题成为本领域技术人员需要解决的众多问题之一。
为了解决上述的问题,本申请提出了一种合同文本错误信息的模糊判定方法及装置,不仅能够使用计算机辅助人工进行审核来有效地解决合同审核过程中存在的人力资源浪费、效率低下、可能出现错误和结果不够直观等问题,还能够通过计算文本之间的余弦相似度,配合差异比较算法进行自动文本比对,对审核结果进行自动批注,具有识别准确、速度快、效率高的优点,提供直观和准确的审核结果,减少审核结果的误解和误判的可能性,下面对该方法进行详细说明。
请参照图1,图1示出了本申请实施例提供的一种合同文本错误信息的模糊判定方法的流程示意图,其中各个步骤为:
S100、基于Python-docx库的二次封装对合同文本进行读写得到多个段落。
S200、将多个段落与合同文本模板中的段落进行对比,计算段落余弦相似度。
S300、使用差异比较算法按照段落余弦相似度对多个段落与合同文本模板中的段落进行差异比较处理得到文本差异内容和文本差异位置。
S400、根据文本差异内容和文本差异位置对合同文本进行标记和修改。
其中合同文本模板包括工程承包人、工程分包人、签订地点以及签订日期。通过对Python-docx库进行二次封装能够实现对合同文档的读写,其中二次封装表示对Python-docx库进行功能性封装,通过封装提供的函数能够更方便的提供调用,并增加了新的功能,例如按照文本内容或索引进行读写等。
在一种可选的实施例中,读写方案包括:按段落读写、按runs读写、按文本读写、按指定文本内容读写和按指定文本索引读写。
由于二次封装后的代码能够按段落读写、按runs读写、按文本读写、按指定文本内容读写和按指定文本索引读写等多种读写方案。其中,按段落读写是指将合同文档拆分为多个段落,将每个段落作为一个整体进行读写,按runs读写是指将段落按照runs(文字的连续区域)进行读写,按文本读写是指直接读写整个文档的纯文本内容,按指定文本内容读写是指只读取或写入包含指定内容的段落或runs,按指定文本索引读写是指读取或写入文档中指定索引位置的段落或runs。对于这些读写方案的具体实现,可以根据需要在封装代码中进行详细说明。
值得说明的是,基于对Python-docx库进行二次封装实现对合同文档进行读写,其中的读写方案可以根据实际情况进行选择或者组合,例如在需要整体处理合同文档时,将合同文档按照不同的段落进行分类、分析等操作,此时读写的部分可以是整个段落,也可以是段落中的一部分。
当需要对合同文档的格式进行修改时、当需要查找合同文档中特定文本内容并进行处理时、当需要根据文本的位置信息进行处理时均可以使用上述的读写方案。使用上述的读写方案,读写的部分是指定文本或者指定索引所在的段落或runs,可以更加精细地处理合同文档中的文本内容,比如调整字体大小、颜色等格式。
在另一种可能的实时方式中,将段落余弦相似度的最高值作为匹配结果,使用差异比较算法按照匹配结果对多个段落与合同文本模板中的段落进行处理。
余弦相似度算法是一种用于衡量两个向量在方向上的相似度的指标,常用于文本分类、信息检索等领域。本申请将合同文档作为待审核的文件,将合同文档模板作为基准的文件,两个文档分别来自于不同的地方,以两个文档均为docx文件,对其匹配过程进行说明。首先遍历两个docx文件的每一个段落,计算不同文件中段落与段落之间的余弦相似度。余弦相似度通过计算两个向量之间的夹角余弦值来获得,先将每个段落视为一个向量,将段落之间的余弦相似度作为用来衡量它们在意义上的相似程度。
每个段落都可以表示为一个向量,将两个段落表示为向量a和b,然后使用公式计算两个段落之间的余弦相似度。遍历两个文档中的每个段落,在遍历过程中,将余弦相似度的值作为匹配结果进行比对。将余弦相似度的值作为一个评分,比较两个文档中的所有段落之间的评分,选取评分最高的一组段落作为匹配结果。
在比对不同算法之间的优劣势时,需要考虑几个方面。首先,余弦相似度算法简单、直观,计算速度快,适用于对长文本进行相似度计算。其次,余弦相似度算法可以对文本中出现次数较少但是重要的词语进行突出显示。然而,余弦相似度算法也存在一些问题,例如对于文本长度差异较大的情况,它容易受到较长文本的影响,结果不够准确。同时,余弦相似度算法不能很好地处理文本中出现位置的差异,例如两个段落中同一个词语出现的位置不同,但在语义上仍然是相似的情况。
在一种可能的实施方式中,使用差异比较算法按照段落余弦相似度对多个段落与合同文本模板中的段落进行差异比较处理得到文本差异内容和文本差异位置的步骤,包括:
使用差异比较算法按照段落余弦相似度对多个段落与合同文本模板中的段落进行插入、删除和匹配得到文本差异内容和文本差异位置;
插入操作为在合同文本中插入新的字符或行;
删除操作为删除合同文本中的字符或行;
匹配操作为将合同文本的字符与合同文本模板的字符,或合同文本的行与合同文本模板的行进行匹配。
差异比较算法在匹配操作中通过寻找公共子序列的最大值得到文本差异内容和文本差异位置。
差异比较(diff algorithm)算法是一种经典的文本比对算法,可以找到两个文本之间的不同之处。核心思想是通过寻找最长的公共子序列来确定文本之间的差异。相比于其他文本比对算法,差异比较算法具有以下优点:第一、结果可以直观地展示文本之间的差异,包括差异的内容和位置,便于用户进行修订和修改。第二、差异比较算法不需要对文本进行预处理,可以直接比较两个文本之间的差异。第三、差异比较算法可以处理较大的文本,且时间复杂度为O(N^2),因此运行速度较快。
本申请的差异比较算法的结果数据结构通常采用差异块的形式进行表示。差异块是由一组行组成的数据结构,包括插入、删除和匹配操作。每个差异块代表了两个文本之间的一段差异。具体来说,差异块包括:差异块类型(Insert、Delete、Match)、差异块起始位置(在源文本和目标文本中的位置)、差异块长度以及差异块内容。使用这种数据结构能够将差异块的内容和位置输出到文档中,方便用户进行修订和修改。
本申请使用该算法首先将文本转换成行的形式,然后比较行之间的差异。差异比较算法进行插入、删除和匹配得到文本差异内容和文本差异位置,其中插入操作是在第一个文本中插入一个新的字符或行,删除操作是删除第一个文本中的一个字符或行。匹配操作是将第一个文本中的一个字符或行与第二个文本中的一个字符或行进行匹配。
在匹配操作中,算法会尝试找到尽可能长的公共子序列。如果无法找到匹配的行,则算法会通过插入或删除操作来尝试匹配行。通过不断重复这些操作,算法可以找到两个文本之间的所有差异。
在一种可能的实施方式中,步骤S400根据文本差异内容和文本差异位置对合同文本进行标记和修改具体包括:
S1、传入起始索引和结束索引,计算出文本差异位置的run列表以及索引;
S2、将run列表中的run拆分为三段:标记前的文字、待标记的目标文字、标记后的文字,run表示一个格式化的文本块;
S3、在原run后面添加一个新run并设置指定颜色和目标文字;
S4、将原run的文字内容修改为标记前面的文字。
S5、如果需要标记的目标文字不是原run的整段文字,需要将标记后面的文字新建一个run并设置为原run的颜色。
S6、重复S3-S5,遍历所有的run。
本申请对比对结果为有差异的内容进行标注,通过modify_text_color_by_index、search_run_info和add_run三个模块在段落的runs之间找到需要修改的文字内容,修改文字格式,其具体实现流程为:首先通过search_run_info()函数传入的起始索引和结束索引,计算出需要修改的run的列表以及对应的索引,然后modify_text_color_by_index()函数使用search_run_info()返回的结果获取需要修改的run列表。对于每个需要修改的run,将其拆分为三段:标记前面的文字、需要标记的目标文字、标记后面的文字。再使用add_run()函数在原run后面添加一个新的run,将颜色设置为指定颜色,并设置文字为需要标记的目标文字。同时将原run的文字内容修改为标记前面的文字。如果需要标记的目标文字不是原run的整段文字,需要将标记后面的文字新建一个run并设置为原run的颜色,重复上述步骤对于每个需要标记的run进行标记。
通过查找run对象和对它们进行分析,确定了需要标注的文本内容,并通过创建新的run对象来添加标注。同时,代码还保留了word文件原有的格式,以确保标注的文本与周围文本的格式一致。通过对文本段落的解析和run对象的拆分、合并,实现了对指定内容进行标记的功能。
与现有技术相比,本申请实施例具有以下有益效果:
第一、通过使用自动化的方式处理合同提高合同处理的效率和准确性,更快地完成任务并保持高精度。与传统的手动处理方式相比,自动化处理方式可以节省时间和减少错误,提高效率和准确性。自动化处理方式可以快速读取和分析文档中的信息,自动将数据输入到电子表格中,提高了准确性和效率。
第二、减少合同处理的人力成本。在大量文档需要处理的情况下,传统的手动处理方式需要雇用更多的员工来完成任务,而本申请的方法可以通过机器完成大量工作,从而节省人力成本。比如,一个公司需要处理数千份合同,使用传统的手动处理方式可能需要数十名员工数月时间完成任务,而使用本发明的自动化处理方式可以缩短处理时间并减少所需的员工数量。
第三、通过使用相同的处理方式,确保在处理合同的过程中,相同的条款和表达方式在各个合同中都被准确地处理。这可以防止因处理方式不同而导致的误差和遗漏。比如,公司处理合同时,可能会使用不同的处理方式和模板来处理不同的合同,从而导致一些重要信息被遗漏或处理不当。而本发明的自动化处理方式可以确保所有合同都使用相同的处理方式和模板进行处理,从而保证了一致性。
第四、采用了模块化的设计和封装的方法,可以方便地对代码进行修改和维护,增强了合同处理的可维护性。比如,如果出现新的合同类型或者法律规定发生变化,可以通过修改代码来适应这些变化,而不需要重新编写整个程序。这可以节省时间和成本,并提高合同处理的灵活性。
在一种可能的实施方式中,本申请还提出了一种合同文本错误信息的模糊判定装置,装置包括:
读写模块,用于基于Python-docx库的二次封装对合同文本进行读写得到多个段落;
对比模块,用于将多个段落与合同文本模板中的段落进行对比,计算段落余弦相似度;
处理模块,用于使用差异比较算法按照段落余弦相似度对多个段落与合同文本模板中的段落进行差异比较处理得到文本差异内容和文本差异位置;
修改模块,用于根据文本差异内容和文本差异位置对合同文本进行修改。
本申请实施例提供了一种计算机设备,该计算机设备可以实现本申请实施例所提供的合同文本错误信息的模糊判定方法任一实施例中的步骤,因此,可以实现本申请实施例所提供的合同文本错误信息的模糊判定方法的有益效果,详见前面的实施例,在此不再赘述。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。为此,本申请实施例提供一种存储介质,其中存储有多条指令,该指令能够被处理器进行加载,以执行本申请实施例所提供的合同文本错误信息的模糊判定方法中任一实施例的步骤。
其中,该存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
由于该存储介质中所存储的指令,可以执行本申请实施例所提供的任一合同文本错误信息的模糊判定方法实施例中的步骤,因此,可以实现本申请实施例所提供的任一合同文本错误信息的模糊判定方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种合同文本错误信息的模糊判定方法,其特征在于,所述方法包括:
基于Python-docx库的二次封装对合同文本进行读写得到多个段落;
将所述多个段落与合同文本模板中的段落进行对比,计算段落余弦相似度;
使用差异比较算法按照所述段落余弦相似度对所述多个段落与合同文本模板中的段落进行差异比较处理得到文本差异内容和文本差异位置;
根据所述文本差异内容和文本差异位置对所述合同文本进行标记和修改。
2.如权利要求1所述的合同文本错误信息的模糊判定方法,其特征在于,读写方案包括:按段落读写、按runs读写、按文本读写、按指定文本内容读写和按指定文本索引读写。
3.如权利要求1所述的合同文本错误信息的模糊判定方法,其特征在于,所述方法还包括:
将所述段落余弦相似度的最高值作为匹配结果,使用差异比较算法按照所述匹配结果对所述多个段落与合同文本模板中的段落进行处理。
4.如权利要求1所述的合同文本错误信息的模糊判定方法,其特征在于,使用差异比较算法按照所述段落余弦相似度对所述多个段落与合同文本模板中的段落进行差异比较处理得到文本差异内容和文本差异位置的步骤,包括:
使用差异比较算法按照所述段落余弦相似度对所述多个段落与合同文本模板中的段落进行插入、删除和匹配得到文本差异内容和文本差异位置;
插入操作为在合同文本中插入新的字符或行;
删除操作为删除合同文本中的字符或行;
匹配操作为将合同文本的字符与合同文本模板的字符,或合同文本的行与合同文本模板的行进行匹配。
5.如权利要求4所述的合同文本错误信息的模糊判定方法,其特征在于,差异比较算法在所述匹配操作中通过寻找公共子序列的最大值得到文本差异内容和文本差异位置。
6.如权利要求1所述的合同文本错误信息的模糊判定方法,其特征在于,所述根据所述文本差异内容和文本差异位置对所述合同文本进行标记和修改的步骤,包括:
S1、传入起始索引和结束索引,计算出文本差异位置的run列表以及索引;
S2、将run列表中的run拆分为三段:标记前的文字、待标记的目标文字、标记后的文字,run表示一个格式化的文本块;
S3、在原run后面添加一个新run并设置指定颜色和目标文字;
S4、将原run的文字内容修改为标记前面的文字。
S5、如果需要标记的目标文字不是原run的整段文字,需要将标记后面的文字新建一个run并设置为原run的颜色。
S6、重复S3-S5,遍历所有的run。
7.如权利要求1所述的合同文本错误信息的模糊判定方法,其特征在于,所述合同文本模板包括工程承包人、工程分包人、签订地点以及签订日期。
8.一种合同文本错误信息的模糊判定装置,其特征在于,所述装置包括:
读写模块,用于基于Python-docx库的二次封装对合同文本进行读写得到多个段落;
对比模块,用于将所述多个段落与合同文本模板中的段落进行对比,计算段落余弦相似度;
处理模块,用于使用差异比较算法按照所述段落余弦相似度对所述多个段落与合同文本模板中的段落进行差异比较处理得到文本差异内容和文本差异位置;
修改模块,用于根据所述文本差异内容和文本差异位置对所述合同文本进行修改。
9.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有计算机程序,所述计算机程序由所述处理器加载并执行以实现如权利要求1-7任一项所述的合同文本错误信息的模糊判定方法。
10.一种计算机可读存储介质,其特征在于,所述存储介质中存储有计算机程序,所述计算机程序由处理器加载并执行以实现如权利要求1-7任一项所述的合同文本错误信息的模糊判定方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310672681.5A CN116702739A (zh) | 2023-06-07 | 2023-06-07 | 一种合同文本错误信息的模糊判定方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310672681.5A CN116702739A (zh) | 2023-06-07 | 2023-06-07 | 一种合同文本错误信息的模糊判定方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116702739A true CN116702739A (zh) | 2023-09-05 |
Family
ID=87827139
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310672681.5A Pending CN116702739A (zh) | 2023-06-07 | 2023-06-07 | 一种合同文本错误信息的模糊判定方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116702739A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117113384A (zh) * | 2023-10-25 | 2023-11-24 | 杭州易靓云科技有限公司 | 一种合同签约管理方法及系统 |
-
2023
- 2023-06-07 CN CN202310672681.5A patent/CN116702739A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117113384A (zh) * | 2023-10-25 | 2023-11-24 | 杭州易靓云科技有限公司 | 一种合同签约管理方法及系统 |
CN117113384B (zh) * | 2023-10-25 | 2024-01-09 | 杭州易靓云科技有限公司 | 一种合同签约管理方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108874928B (zh) | 简历数据信息解析处理方法、装置、设备及存储介质 | |
CN109344230B (zh) | 代码库文件生成、代码搜索、联结、优化以及移植方法 | |
CN109446885B (zh) | 一种基于文本的元器件识别方法、系统、装置和存储介质 | |
RU2613846C2 (ru) | Метод и система извлечения данных из изображений слабоструктурированных документов | |
CN108228231B (zh) | 一种Git仓库文件注解系统的可视化漂移方法 | |
CN114168716B (zh) | 基于深度学习的工程造价自动抽取和分析方法及装置 | |
CN112036273A (zh) | 一种图像识别方法及装置 | |
CN111651552B (zh) | 结构化信息确定方法、装置和电子设备 | |
CN111191275A (zh) | 敏感数据识别方法、系统及其装置 | |
CN112818093A (zh) | 基于语义匹配的证据文档检索方法、系统及存储介质 | |
CN112926299B (zh) | 一种文本比对方法、合同审阅方法、审核系统 | |
CN116702739A (zh) | 一种合同文本错误信息的模糊判定方法及装置 | |
CN111950262A (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
CN110795942B (zh) | 基于语义识别的关键词确定方法、装置和存储介质 | |
CN114003725A (zh) | 信息标注模型的构建方法以及信息标注的生成方法 | |
CN116932499B (zh) | 一种dwg格式文件批量修改标注的方法 | |
CN116127105B (zh) | 一种大数据平台的数据汇集方法及装置 | |
CN110909532B (zh) | 用户名称匹配方法、装置、计算机设备和存储介质 | |
Dannélls et al. | Evaluation and refinement of an enhanced OCR process for mass digitisation. | |
CN113569533B (zh) | 保险内容标注方法、系统、计算机设备及存储介质 | |
CN113254583B (zh) | 一种基于语义向量的文档标记方法、装置及介质 | |
US20230126022A1 (en) | Automatically determining table locations and table cell types | |
CN114154480A (zh) | 信息提取方法、装置、设备和存储介质 | |
Chia et al. | Text extraction and categorization from watermark scientific document in bulk | |
CN117114013B (zh) | 一种基于小样本的语义标注方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |