Intelligent agent analysis system for performing patent infringement analysis on molecular structure
By decomposing tasks within a multi-model intelligent agent system framework and introducing a stepwise verification mechanism, the problem of insufficient analytical accuracy in molecular structure patent infringement analysis in existing technologies is solved, resulting in higher quality analysis results.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-11
- Publication Date
- 2026-03-20
AI Technical Summary
Existing intelligent agent systems lack sufficient analytical precision in molecular structure patent infringement analysis and lack step-by-step verification processes, resulting in low analysis quality.
A multi-model intelligent agent system framework is adopted, which decomposes the patent infringement analysis task into multiple sub-tasks. The task scheduling module schedules the molecular analysis module, patent analysis agent, structure matching agent and infringement analysis module to execute, and the fact-checking module performs step-by-step verification. The ChemBERTa, SciBERT and other models are used for chemical entity recognition and SMARTS pattern conversion. The Markush structure library and substituent database are combined for targeted fine-tuning.
This improves the analytical precision and final analytical quality of molecular structure patent infringement analysis, ensuring the accuracy and reliability of the analytical results.
Smart Images

Figure CN121709079A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of data processing, and particularly relates to an intelligent agent analysis system for patent infringement analysis of molecular structures. BACKGROUND
[0002] Drug research and development is an important link in the field of modern medicine, and patent protection plays a crucial role in this process. With the rapid development of artificial intelligence (AI) technology, AI-based drug research and development technology has brought unprecedented efficiency improvement for molecular design and drug screening. However, the generation of new molecules is also accompanied by potential patent infringement risks. If the new molecular structure overlaps with the protection scope of existing patents, it may trigger a series of legal disputes and significant economic losses related to infringement.
[0003] An intelligent agent, also known as an artificial intelligence agent (AI Agent), is a task processing entity that uses an artificial intelligence model (such as a large language model) as the core to perceive the environment, make action decisions based on the perception results, and perform actions based on the decision results. An intelligent agent system is a comprehensive service system or platform built around one or more intelligent agents. Currently, intelligent agent systems have been widely used in scientific research, literature analysis, and other fields. There are also some application cases for patent infringement analysis of molecular structures.
[0004] However, through analysis, it is found that these conventional schemes mostly borrow the single model / single intelligent agent framework of intelligent question and answer systems for implementation. This framework has inherent defects in terms of insufficient analysis accuracy for specific chemical analysis tasks such as molecular data analysis, Markush structure analysis, and substituent matching. Moreover, these conventional schemes lack a step-by-step verification process for analysis results, and the quality of the final output analysis needs to be further improved. SUMMARY
[0005] The intelligent agent analysis system for patent infringement analysis of molecular structure provided by the present application can improve the analysis accuracy of each step and improve the analysis quality of the final output. To achieve the above-mentioned object, the embodiment of the present application provides an intelligent agent analysis system for patent infringement analysis of molecular structure, which comprises a task scheduling module, a molecular analysis module, a patent analysis intelligent agent, a structure matching intelligent agent, an infringement analysis module, a fact checking module, a Markush structure library and a substituent database. The task scheduling module is connected with the molecular analysis module, the patent analysis intelligent agent, the structure matching intelligent agent, the infringement analysis module and the fact checking module respectively; and the structure matching intelligent agent is connected with the Markush structure library and the substituent database respectively. The task scheduling module is used to initialize a task cache area based on the user-input queried molecular data and target patent document to obtain a first task cache area; and to sequentially schedule the sub-task processing of the molecular analysis module, the patent analysis agent, and the structure matching agent by sending scheduling instructions. Upon completion of each sub-task scheduling, a verification instruction is sent to instruct the fact-checking module to perform fact-checking on the current sub-task output. If all sub-tasks return successful and the verification is normal, the infringement analysis module is scheduled to generate a corresponding infringement analysis report and provide it to the current user. The queried molecular data is a SMILES sequence or a molecular file; the target patent document is a PDF file. The molecular analysis module is used to analyze the molecular structure of molecular data and store the analysis results in the corresponding task cache area. The patent analysis agent is used to analyze the claims of patent documents and identify molecular skeletons and substituents based on the analyzed text, and store the analysis and identification results in the corresponding task cache area; the patent analysis agent has built-in chemical entity recognition model and chemical translation model; the chemical entity recognition model is used to identify Markush structure entities of compound molecules in the model input text; the chemical translation model is used to perform SMARTS pattern structure conversion in the model input text; The structure matching agent is used to analyze the matching structures of the query molecule and the target molecule in the patent document based on the subtask outputs of the molecular analysis module and the patent analysis agent, and to store the analysis results in the corresponding task cache. The structure matching agent has a built-in substituent recognition model. The model input of the substituent recognition model includes the query molecule structure and the target skeleton structure, wherein the target skeleton structure comes from the target molecule in the patent document. The substituent recognition model is used to take the substructure in the query molecule structure that matches the target skeleton structure as the current skeleton and to identify the substituents in the query molecule structure that dock with the current skeleton. The structure matching agent is also used to generate a corresponding model training set based on the updated database content and the substituent database each time the Markush structure library completes a database update, and to perform a targeted fine-tuning of the structure matching model based on the current training set. The infringement analysis module is used to perform patent infringement analysis based on the subtask output results of the structure matching agent and store the analysis results in the corresponding task cache area. The fact-checking module is used to perform fact-checking on the subtask output results of the molecular analysis module, the patent analysis agent, or the structure matching agent specified by the verification instruction of the task scheduling module, and update the corresponding task cache based on the verification results; The Markush structure library is used to store multiple molecular structure samples; The substituent database is used to store multiple substituent structure samples.
[0006] Preferably, the first task cache is used to store the first task identifier, the first task status, the queried molecule data, the target patent document, the first molecule structure, the first patent analysis report, the first structure matching report, the first analysis report, the first verification report, the second verification report, and the third verification report; The first molecular structure is the output data of the molecular analysis module; The first patent analysis report is the output data of the patent analysis intelligent agent; The first structure matching report is the output data of the structure matching agent; The first analysis report is the output data of the infringement analysis module; The first verification report, the second verification report, and the third verification report are the output data of the fact-checking module; The first task status includes initial, molecular analysis, molecular analysis failure, molecular analysis verification, molecular analysis verification anomaly, patent analysis, patent analysis failure, patent analysis verification, patent analysis verification anomaly, structure matching, structure matching failure, structure matching verification, structure matching verification anomaly, infringement analysis, infringement analysis failure, and end; The chemical entity recognition model is based on a class of NER models in the chemical field; the NER models in the chemical field include the ChemBERTa model and the SciBERT model. The input text of the chemical entity recognition model is a piece of natural language text, and the output of the model is a corresponding first molecular entity set; when the first molecular entity set is not empty, it consists of one or more first molecular entities; each first molecular entity corresponds to a compound molecule, and the entity representation of the first molecular entity satisfies the expression of the Markush structure. The first molecular entity includes a first skeletal entity and a first subset of substituents; The entity attributes of the first skeleton entity include the first skeleton name and the first skeleton text position; the first skeleton name is the chemical name text of the current molecular skeleton; the first skeleton text position is composed of the character position indexes of the start and end characters of the current skeleton name in the current model input text; When the first substituent subset is not empty, it consists of one or more first substituent entities. The entity attributes of the first substituent entities include a first substituent label, a first label text position, a set of first substituent names, and a set of first name text positions. The first substituent label is the position label of a substituent docking site on the current molecular skeleton. The first label text position is composed of the character position indices of the start and end characters of the original text corresponding to the position label in the current model input text. The first substituent name set consists of one or more first substituent names. The first substituent name is the chemical name text of a substituent that can dock with the current molecular skeleton at the current substituent docking site. The first name text position set consists of one or more first substituent text positions. The first substituent text positions correspond one-to-one with the first substituent names. The first substituent text positions are composed of the character position indices of the start and end characters of the current substituent name in the current model input text. The chemical translation model is implemented based on the T5 model or the BART model; The chemical translation model takes a sentence of natural language text as input and outputs a translation structure that satisfies the SMARTS pattern. The substituent recognition model is a targeted fine-tuning model of a type of generative large language model; the generative large language model includes the ChemT5 model, the DeepSeek series models, and the Llama series models; The query molecular structure and the target backbone structure input to the substituent recognition model are both SMARTS pattern structures; the model output of the substituent recognition model is a second molecular entity that satisfies the Markush structure. The second molecular entity includes a second skeletal entity and a second subset of substituents; If the queried molecular structure does not have a substructure that matches the target skeleton structure, the corresponding second substituent subset is empty; if the queried molecular structure has a substructure that matches the target skeleton structure, the corresponding second substituent subset is not empty. The entity attributes of the second skeleton entity include the second skeleton name and the second skeleton structure; the second skeleton name is the chemical name text of the current skeleton; the second skeleton structure is the corresponding target skeleton structure; When the second substituent subset is not empty, it consists of one or more second substituent entities; the entity attributes of the second substituent entity include the second substituent label, the second substituent name, and the second substituent structure; the second substituent label is the site label of a substituent docking site on the current target skeleton; the second substituent name is the chemical name text of a type of substituent that can dock with the current target skeleton at the current substituent docking site; the second substituent structure is the SMARTS pattern structure of the current substituent; Each molecular structure sample in the Markush structure library is a Markush structure of a compound molecule, consisting of a corresponding sample backbone entity and a sample substituent subset. The entity attributes of the sample backbone entity include the sample backbone name and sample backbone structure. The sample backbone name is the chemical name text of the current molecular backbone. The sample backbone structure is a SMARTS pattern structure. The sample substituent subset consists of one or more sample substituent entities. The entity attributes of the sample substituent entities include the sample substituent label and a set of optional substituent names. The set of optional substituent names consists of one or more optional substituent names. The optional substituent name is the chemical name text of a type of substituent that can dock with the current molecular backbone at the current substituent docking site. Each substituent structure sample in the substituent database consists of a corresponding sample substituent name and a sample substituent structure; the sample substituent structure is a SMARTS pattern structure.
[0007] Preferably, the task scheduling module is specifically used when the first task cache is obtained by initializing the task cache based on the user-input queried molecular data and target patent documents: Upon receiving the queried molecular data and the target patent document, a corresponding data cache is initialized for the current task as the first task cache; a corresponding task identifier is assigned to the current task as the first task identifier; the corresponding first task status is set to initial; and the first task identifier, the first task status, the queried molecular data, and the target patent document are stored in the first task cache.
[0008] Preferably, the task scheduling module is specifically used to sequentially schedule the subtask processing of the molecular analysis module, the patent analysis agent, and the structure matching agent by sending scheduling instructions, and to send a verification instruction to specify the fact-checking module to perform fact-checking on the output result of the current subtask when each subtask scheduling is completed, and to schedule the infringement analysis module to generate a corresponding infringement analysis report and provide it to the current user when all subtasks have returned successful feedback and the verification is normal: Step 41: When the first task state is initial, send the first scheduling instruction carrying the first task identifier to the molecular analysis module and reset the first task state to molecular analysis. Step 42: Upon receiving the first scheduling feedback from the molecular analysis module, extract the corresponding first feedback status from the current feedback; if the first feedback status is failure, reset the first task status to molecular analysis failure and proceed to step 48; if the first feedback status is success, send the first verification instruction carrying the first task identifier to the fact verification module and reset the first task status to molecular analysis verification. The first feedback status includes failure and success; Step 42: Upon receiving the first verification feedback from the fact-checking module, extract the corresponding first verification status from the current feedback; if the first verification status is abnormal, reset the first task status to molecular analysis verification abnormal and proceed to step 48; if the first verification status is normal, send the second scheduling instruction carrying the first task identifier to the patent analysis agent and reset the first task status to patent analysis. The first verification status includes abnormal and normal. Step 43: Upon receiving the second scheduling feedback sent back by the patent parsing agent, extract the corresponding second feedback status from the current feedback; if the second feedback status is failure, reset the first task status to patent parsing failure and proceed to step 48; if the second feedback status is success, send the second verification instruction carrying the first task identifier to the fact verification module and reset the first task status to patent parsing verification. The second feedback status includes failure and success; Step 44: Upon receiving the second verification feedback from the fact-checking module, extract the corresponding second verification status from the current feedback; if the second verification status is abnormal, reset the first task status to patent analysis verification abnormal and proceed to step 48; if the second verification status is normal, send the third scheduling instruction carrying the first task identifier to the structure matching agent and reset the first task status to structure matching. The second verification status includes abnormal and normal. Step 45: Upon receiving the third scheduling feedback from the structure matching agent, extract the corresponding third feedback state from the current feedback; if the third feedback state is a failure, reset the first task state to structure matching failure and proceed to step 48; if the third feedback state is a success, send the third verification instruction carrying the first task identifier to the fact verification module and reset the first task state to structure matching verification. The third feedback status includes failure and success; Step 46: Upon receiving the third verification feedback from the fact-checking module, extract the corresponding third verification status from the current feedback; if the third verification status is abnormal, reset the first task status to structure matching verification abnormal and proceed to step 48; if the third verification status is normal, send the fourth scheduling instruction carrying the first task identifier to the infringement analysis module and reset the first task status to infringement analysis. The third verification status includes abnormal and normal. Step 47: Upon receiving the fourth scheduling feedback from the infringement analysis module, extract the corresponding fourth feedback status from the current feedback; if the fourth feedback status is failure, reset the first task status to infringement analysis failure; if the fourth feedback status is success, reset the first task status to end. The fourth feedback status includes failure and success; Step 48: Package all cached data in the first task cache area to obtain the corresponding first task data package; and identify the status of the first task; if the first task status is any type of failure or any type of verification anomaly, generate a corresponding task interruption report based on the first task status and the first task data package and provide feedback to the current user, and delete the first task cache area; if the first task status is completed, generate the corresponding infringement analysis report based on the first task data package and provide feedback to the current user, and delete the first task cache area.
[0009] Preferably, the molecular analysis module is specifically used when performing molecular structure analysis on the molecular data and storing the analysis results in the corresponding task cache area: Step 51: Listen for and receive the first scheduling instruction sent by the task scheduling module; and upon receiving the first scheduling instruction, use the first task buffer corresponding to the first task identifier in the current instruction as the current task buffer; and use the queried molecular data in the current task buffer as the current molecular data. Step 52: Identify the data format of the current molecular data; if the current molecular data is a SMILES sequence, use the RDKit tool to convert the current SMILES sequence into a molecular object to obtain the corresponding current molecular object; if the current molecular data is a molecular file, use the RDKit tool to convert the current molecular file into a molecular object to obtain the corresponding current molecular object; and use the RDKit tool to convert the current molecular object into a SMARTS pattern structure to obtain the corresponding first molecular structure, which is then stored in the current task cache. Step 53: If any abnormality occurs during the processing of steps 51-52, the subsequent processing steps are stopped immediately and the corresponding first feedback status is set to failure. If no abnormality occurs during the processing of steps 51-52, the corresponding first feedback status is set to success at the end of the processing. And when the first feedback status is set, the first scheduling feedback carrying the first feedback status is sent back to the task scheduling module.
[0010] Preferably, the patent parsing agent is specifically used when performing claim parsing on the patent document, identifying the molecular skeleton and substituents based on the parsed text, and storing the parsing and identification results in the corresponding task cache: Step 61: Listen for and receive the second scheduling instruction sent by the task scheduling module; and upon receiving the second scheduling instruction, use the first task cache corresponding to the first task identifier in the current instruction as the current task cache; and use the target patent document in the current task cache as the current patent document. Step 62: Use a preset patent document scanning tool to perform full-text recognition of the text content of the claims of the current patent document to obtain the corresponding original text of the first claim; The patent document scanning tools include PyPDF2, pdfminer, PDFelement, and the LayOutLM series of models; Step 63: Input the original text of the first claim as the model input text into the chemical entity recognition model to perform compound molecular entity recognition processing to obtain the corresponding first molecular entity set; Step 64: When the first molecular entity set is not empty, add molecular structure attributes to the first molecular entity set using the chemical translation model, specifically as follows: Each of the first skeleton names or first substituent names in the first molecular entity set is used as the corresponding current name text; the current name text is then fed into the chemical translation model as model input text to perform SMARTS pattern structure conversion processing to obtain the corresponding translation structure, and the current translation structure is used as the first skeleton structure or first substituent structure corresponding to the current name text; each of the first skeleton structures is added as a new entity attribute to the corresponding first skeleton entity; and all the first substituent structures corresponding to each of the first substituent entities form the corresponding first substituent structure set; and each set of the first substituent structures is added as a new entity attribute to the corresponding first substituent entity; The first molecular entity set after attribute addition consists of one or more first molecular entities; the first molecular entity includes the first skeleton entity and the first substituent subset; the entity attributes of the first skeleton entity include the first skeleton name, the first skeleton text position, and the first skeleton structure; when the first substituent subset is not empty, it consists of one or more first substituent entities; the entity attributes of the first substituent entity include the first substituent label, the first label text position, the first substituent name set, the first name text position set, and the first substituent structure set; the first substituent name set consists of one or more first substituent names; the first name text position set consists of one or more first substituent text positions; the first substituent text position corresponds one-to-one with the first substituent name; the first substituent structure set consists of one or more first substituent structures, and the first substituent structure corresponds one-to-one with the first substituent name; the first skeleton structure and each of the first substituent structures are SMARTS pattern structures; Step 65: The first patent analysis report, consisting of the original text of the first claim and the first molecular entity set with added structural attributes, is stored in the current task cache area. Step 66: If any abnormality occurs during the processing of steps 61-65, the subsequent processing steps are stopped immediately and the corresponding second feedback status is set to failure. If no abnormality occurs during the processing of steps 61-65, the corresponding second feedback status is set to success at the end of the processing. And when the second feedback status is set, the second scheduling feedback carrying the second feedback status is sent back to the task scheduling module.
[0011] Preferably, the structure matching agent is specifically used when analyzing the matching structure of the query molecule and the target molecule in the patent document based on the subtask output results of the molecular analysis module and the patent analysis agent, and storing the analysis results in the corresponding task cache area: Step 71: Listen for and receive the third scheduling instruction sent by the task scheduling module; and upon receiving the third scheduling instruction, take the first task cache corresponding to the first task identifier in the current instruction as the current task cache; take the first molecular structure and the first patent analysis report in the current task cache as the corresponding current queried molecular structure and current patent analysis report; and take the first molecular entity set in the current patent analysis report as the corresponding target molecular entity set. Step 72: Take the first skeleton structure of each first molecular entity in the target molecular entity set as the corresponding current target skeleton structure; and input the current query molecular structure and the current target skeleton structure into the substituent recognition model for processing to obtain the corresponding second molecular entity; Step 73: Identify whether the total number of second molecular entities whose second substituent subset is not empty is zero; if yes, set the report content of the corresponding first structure matching report to no matching structure; if no, form a corresponding matching structure record by each second molecular entity whose second substituent subset is not empty and its corresponding first molecular entity, and form the corresponding first structure matching report by all the obtained matching structure records; and store the obtained first structure matching report in the current task cache area. Step 74: If any abnormality occurs during the processing of steps 71-73, the subsequent processing steps are stopped immediately and the corresponding third feedback status is set to failure. If no abnormality occurs during the processing of steps 71-73, the corresponding third feedback status is set to success at the end of the processing. And when the third feedback status is set, the third scheduling feedback carrying the third feedback status is sent back to the task scheduling module.
[0012] Preferably, the infringement analysis module is specifically used when performing patent infringement analysis based on the subtask output of the structure matching agent and storing the analysis results in the corresponding task cache: Step 81: Listen for and receive the fourth scheduling instruction sent by the task scheduling module; and upon receiving the fourth scheduling instruction, take the first task buffer corresponding to the first task identifier in the current instruction as the current task buffer; and take the first structure matching report in the current task buffer as the corresponding current matching report. Step 82: Identify whether the content of the current matching report has no matching structure; Step 83: If the report content of the current matching report is a no-match structure, then set the report content of the corresponding first analysis report to be free of infringement risk. Step 84: If the content of the current matching report is not a no-match structure, then perform substituent alignment between the query molecule and the patent target molecule according to the current matching report and generate the corresponding first analysis report based on the alignment results. Specifically, the process involves: recording each matching structure in the current matching report as the current record; using the first molecular entity and the second molecular entity in the current record as the corresponding current patent target molecule and current query molecule; performing a round of traversal on all second substituents in the current query molecule; during this round of traversal, using the currently traversed second substituent as the current substituent, and using the second substituent label, second substituent name, and second substituent structure of the current substituent as the current label, current name, and current structure; and using the first substituent entity in the current patent target molecule whose first substituent label matches the current label as the current entity; and identifying whether the current entity is empty; if so, setting the corresponding first alignment result to no matching substituent; if not, then using the current entity that matches the current... The first substituent name that matches the name and the first substituent structure that matches the current structure are used as the corresponding current matching name and current matching structure. The system identifies whether the current matching name and current matching structure are both empty. If so, the corresponding first alignment result is set to "no matching substituent." Otherwise, the first alignment result is composed of a set of first substituent labels, first substituent names, and first substituent structures corresponding to the current substituent in the current entity. A corresponding first alignment record is formed by the current substituent and its corresponding first alignment result. At the end of this round of traversal, all the first alignment records obtained in this round of traversal form the first alignment report corresponding to the current patent target molecule. All the first alignment reports corresponding to the current matching report form the corresponding first analysis report. Step 85: Store the obtained first analysis report into the current task cache area; Step 86: If any abnormality occurs during the processing of steps 81-85, the subsequent processing steps are stopped immediately and the corresponding fourth feedback status is set to failure. If no abnormality occurs during the processing of steps 81-85, the corresponding fourth feedback status is set to success at the end of the processing. And when the fourth feedback status is set, the fourth scheduling feedback carrying the fourth feedback status is sent back to the task scheduling module.
[0013] Preferably, the fact-checking module is specifically used to perform fact-checking on the subtask output results of the molecular analysis module, the patent analysis agent, or the structure matching agent specified by the verification instruction of the task scheduling module, and to update the corresponding task cache based on the verification results: The system listens for and receives verification instructions sent by the task scheduling module; upon receiving a first verification instruction, it performs fact-checking on whether the molecular structure output by the molecular analysis module is the same molecule as the original queried molecular data and updates the corresponding task cache based on the verification result; upon receiving a second verification instruction, it verifies whether the molecular entity output by the patent analysis agent matches the original claim and performs chemical rationality verification on the output molecular entity and updates the corresponding task cache based on the verification result; upon receiving a third verification instruction, it verifies each report record of the structure matching report output by the structure matching agent and updates the corresponding task cache based on the verification result.
[0014] Furthermore, the fact-checking module is specifically used to perform fact-checking on whether the molecular structure output by the molecular analysis module is the same molecule as the original queried molecular data, and to update the corresponding task cache based on the fact-checking result: The first task cache area corresponding to the first task identifier in the current first verification instruction is taken as the current task cache area; and the query molecular data and the first molecular structure in the current task cache area are taken as the corresponding current query molecular data and current molecular structure. The system identifies the data format of the currently queried molecular data; if the currently queried molecular data is a SMILES sequence, the RDKit tool is used to convert the current SMILES sequence into a molecular object to obtain the corresponding first molecular object; if the currently queried molecular data is a molecular file, the RDKit tool is used to convert the current molecular file into a molecular object to obtain the corresponding first molecular object; and the RDKit tool is used to convert the current molecular structure into a molecular object to obtain the corresponding second molecular object. The RDKit tool is used to confirm whether the first and second molecular objects are the same molecule. If they are confirmed to be the same molecule, the corresponding first verification report is set to "Molecular parsing task verification passed" and the corresponding first verification status is set to "normal". If they are confirmed to be different molecules, the corresponding first verification report is set to "Molecular parsing task verification failed" and the corresponding first verification status is set to "abnormal". The first verification report is stored in the current task cache area and the first verification feedback carrying the first verification status is sent back to the task scheduling module.
[0015] Furthermore, the fact-checking module is specifically used to check whether the molecular entity output by the patent analysis agent matches the original claim, to verify the chemical rationality of the output molecular entity, and to update the corresponding task cache based on the verification results: The first task cache area corresponding to the first task identifier in the current second verification instruction is taken as the current task cache area; and the corresponding first claim text and the first molecular entity set are extracted from the first patent analysis report in the current task cache area. The first skeleton name or the first substituent name of the first molecular entity set are taken as the corresponding current name text; the first skeleton text position or the first substituent text position corresponding to the current name text are taken as the corresponding current text position; the subtext corresponding to the current text position in the original text of the first claim is extracted as the corresponding current comparison text; and the current comparison text is identified as matching the current name text; if they match, the corresponding name comparison result is set to successful; if they do not match, the corresponding name comparison result is set to failed; and the current name text, the current text position, and the text comparison result are used to form the corresponding name comparison record; and all the obtained name comparison records are used to form the corresponding name comparison report. The first substituent labels of the first molecular entity set are used as the corresponding current label text; the position of the first label text corresponding to the current label text is used as the corresponding current label position; the subtext corresponding to the current label position in the original text of the first claim is extracted as the corresponding current alignment text; and it is identified whether the current alignment text and the current label text refer to the same docking site; if yes, the corresponding label alignment result is set to successful; if no, the corresponding label alignment result is set to failed; and the current label text, the current label position, and the label alignment result form the corresponding label alignment record; and all the obtained label alignment records form the corresponding label alignment report. Each of the first molecular entities in the first set of molecular entities is taken as the corresponding current molecular entity; the RDKit tool is used to convert the current molecular entity into a molecular object to obtain the corresponding current molecular object; the RDKit tool is used to verify the chemical rationality of the current molecular object to obtain the corresponding first rationality verification result; the current molecular entity and its corresponding first rationality verification result constitute the corresponding chemical rationality verification record; and all the obtained chemical rationality verification records constitute the corresponding chemical rationality verification report; wherein, the first rationality verification result includes success and failure; The second verification report, composed of the name comparison report, the label comparison report, and the chemical rationality verification report, is stored in the current task cache. The system then identifies whether all the obtained name comparison results, label comparison results, and first rationality verification results are successful. If so, the corresponding second verification status is set to normal; otherwise, the corresponding second verification status is set to abnormal. Finally, the second verification feedback carrying the second verification status is sent back to the task scheduling module.
[0016] Furthermore, the fact-checking module is specifically used to check each report record of the structure matching report output by the structure matching agent and update the corresponding task cache based on the check results: The first task cache area corresponding to the first task identifier in the current third verification instruction is taken as the current task cache area; and the first structure matching report in the current task cache area is taken as the current structure matching report; It also identifies whether the report content of the current structure matching report is a structure without matching. If so, then set the content of the corresponding third verification report to a no-verification structure; If not, then each of the matching structure records in the current structure matching report is taken as the current record; and the corresponding first and second molecular entities are extracted from the current record; and the skeleton names and skeleton structures of the first and second skeleton entities of the current first and second molecular entities are identified as being the same. If they are, the corresponding skeleton alignment result is set to successful; otherwise, the corresponding skeleton alignment result is set to failed; and the RDKit tool is used to convert the current second molecular entity into a molecular object to obtain the corresponding current molecular object; and the RDKit tool is used to verify the chemical rationality of the current molecular object to obtain the corresponding second rationality verification result; and the current first and second molecular entities, the corresponding skeleton alignment result, and the second rationality verification result are combined to form the corresponding matching structure verification record; and all the obtained matching structure verification records are combined to form the corresponding third verification report; wherein, the second rationality verification result includes success and failure; The system identifies whether the obtained third verification report is a structure without verification. If so, the corresponding third verification status is set to normal. If not, the system identifies whether all skeleton comparison results and all second rationality verification results corresponding to the current third verification report are successful. If so, the corresponding third verification status is set to normal; otherwise, the corresponding third verification status is set to abnormal. The system then stores the third verification report in the current task cache and sends the third verification feedback carrying the third verification status back to the task scheduling module.
[0017] Preferably, the structure matching agent is specifically used when generating a corresponding model training set based on the currently updated database content and the substituent database, and performing a targeted fine-tuning of the structure matching model based on the current training set: A corresponding molecular update set is formed by all the molecular structure samples updated in the Markush structure library; a first dataset is constructed by using the molecular update set and the substituent database as a model training set; a corresponding copy model is generated by replicating the structure matching model; the copy model is fine-tuned using the first dataset in a supervised training manner; and at the end of this fine-tuning training, the structure matching model is updated based on the model parameters of the copy model. The first dataset includes multiple first data records; each first data record includes a training molecular structure, a training backbone structure, and a labeled molecular entity; the data structures of the training molecular structure, the training backbone structure, and the labeled molecular entity are consistent with the query molecular structure, the target backbone structure, and the second molecular entity corresponding to the substituent recognition model.
[0018] This invention provides an intelligent agent analysis system for patent infringement analysis of molecular structures. The system includes: a task scheduling module, a molecular analysis module, a patent analysis intelligent agent, a structure matching intelligent agent, an infringement analysis module, a fact-checking module, a Markush structure library, and a substituent database. The task scheduling module initializes the task cache based on the user-input queried molecular data and target patent documents. It then sequentially schedules the subtask processing of the molecular analysis module, patent analysis agent, and structure matching agent by sending scheduling commands. Upon completion of each subtask scheduling, it sends a verification command to instruct the fact-checking module to perform fact-checking on the current subtask's output. Only after all subtasks have successfully completed the verification is the infringement analysis module scheduled to generate a corresponding infringement analysis report and provide it to the user. The molecular analysis module performs molecular structure analysis on the molecular data. The patent analysis agent performs claim analysis on the patent documents and identifies the molecular skeleton and substituents based on the analyzed text. The structure matching agent analyzes the matching structures of the queried molecule and the target molecule in the patent document based on the subtask outputs of the molecular analysis module and the patent analysis agent. The infringement analysis module performs patent infringement analysis based on the subtask outputs of the structure matching agent. The fact-checking module performs fact-checking on the subtask outputs of the molecular analysis module, the patent analysis agent, or the structure matching agent. Furthermore, the structure matching agent is also used to generate a corresponding model training set based on the updated database content and the subbase database each time the Markush structure library completes a database update, and to perform a targeted fine-tuning of the structure matching model based on the current training set. The system of this embodiment is implemented based on a multi-agent system framework with multiple model agents; this embodiment decomposes the patent infringement analysis task into multiple specialized sub-tasks and schedules different sub-task modules / agents to execute them separately, and introduces a step-by-step verification mechanism through a fact-checking module; this embodiment not only improves the parsing accuracy at each step, but also improves the analysis quality of the final output. Attached Figure Description
[0019] Figure 1 This is a module structure diagram of an intelligent agent analysis system for patent infringement analysis of molecular structures, provided in an embodiment of the present invention. Detailed Implementation
[0020] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings. Obviously, the described embodiments are merely some embodiments of this invention, and not all embodiments. Based on the embodiments of this invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this invention.
[0021] The intelligent agent analysis system for patent infringement analysis of molecular structures provided in this invention embodiment, such as... Figure 1 The module structure diagram of an intelligent agent analysis system for patent infringement analysis of molecular structures provided in this embodiment of the invention is shown. It mainly includes: task scheduling module 1, molecular analysis module 2, patent analysis intelligent agent 3, structure matching intelligent agent 4, infringement analysis module 5, fact checking module 6, Markush structure library 7, and substituent database 8.
[0022] Task scheduling module 1 is connected to molecular analysis module 2, patent analysis agent 3, structure matching agent 4, infringement analysis module 5, and fact-checking module 6 respectively; structure matching agent 4 is connected to Markush structure library 7 and substituent database 8 respectively.
[0023] (a) Task scheduling module 1: In this embodiment of the invention, the task scheduling module 1 initializes the task cache area based on the user-input queried molecular data and target patent documents to obtain a first task cache area; and sequentially schedules the sub-task processing of the molecular analysis module 2, the patent analysis agent 3, and the structure matching agent 4 by sending scheduling instructions. When each sub-task scheduling is completed, the module sends a verification instruction to instruct the fact-checking module 6 to perform fact-checking on the output result of the current sub-task. If all sub-tasks have returned successful feedback and the verification is normal, the module schedules the infringement analysis module 5 to generate a corresponding infringement analysis report and provide it to the current user.
[0024] Here, the queried molecular data in this embodiment of the invention is a SMILES sequence or a molecular file; the target patent document is a PDF file.
[0025] The first task cache area in this embodiment of the invention is used to store a first task identifier, a first task status, queried molecular data, a target patent document, a first molecular structure, a first patent analysis report, a first structure matching report, a first analysis report, a first verification report, a second verification report, and a third verification report. The first molecular structure is the output data of the molecular analysis module 2, the first patent analysis report is the output data of the patent analysis agent 3, the first structure matching report is the output data of the structure matching agent 4, the first analysis report is the output data of the infringement analysis module 5, and the first, second, and third verification reports are the output data of the fact-checking module 6.
[0026] The first task state in this embodiment of the invention includes: initial, molecular analysis, molecular analysis failure, molecular analysis verification, molecular analysis verification anomaly, patent analysis, patent analysis failure, patent analysis verification, patent analysis verification anomaly, structure matching, structure matching failure, structure matching verification, structure matching verification anomaly, infringement analysis, infringement analysis failure, and end.
[0027] In one specific implementation of this invention, the task scheduling module 1 is specifically used to initialize the task cache area to obtain the first task cache area based on the user-input queried molecular data and target patent documents: Upon receiving the queried molecular data and target patent documents, a corresponding data cache is initialized for the current task as the first task cache; a corresponding task identifier is assigned to the current task as the first task identifier; the corresponding first task status is set to initial; and the first task identifier, first task status, queried molecular data, and target patent documents are stored in the first task cache.
[0028] In another specific implementation of this invention, the task scheduling module 1 is specifically used to sequentially schedule the subtask processing of the molecular analysis module 2, the patent analysis agent 3, and the structure matching agent 4 by sending scheduling instructions, and to send a verification instruction to specify the fact-checking module 6 to perform fact-checking on the output result of the current subtask when each subtask scheduling is completed, and to schedule the infringement analysis module 5 to generate the corresponding infringement analysis report and provide it to the current user when all subtasks have returned successful feedback and the verification is normal: Step A1: When the first task state is initial, the first scheduling instruction carrying the first task identifier is sent to the molecular analysis module 2, and the first task state is reset to molecular analysis. Step A2: Upon receiving the first scheduling feedback from the molecular analysis module 2, extract the corresponding first feedback status from the current feedback; if the first feedback status is failure, reset the first task status to molecular analysis failure and proceed to step A8; if the first feedback status is success, send the first verification instruction carrying the first task identifier to the fact verification module 6 and reset the first task status to molecular analysis verification. The first feedback status includes failure and success; Step A2: Upon receiving the first verification feedback from the fact-checking module 6, extract the corresponding first verification status from the current feedback; if the first verification status is abnormal, reset the first task status to molecular analysis verification abnormal and proceed to step A8; if the first verification status is normal, send the second scheduling instruction carrying the first task identifier to the patent analysis agent 3 and reset the first task status to patent analysis. The first verification status includes abnormal and normal. Step A3: Upon receiving the second scheduling feedback from the patent parsing agent 3, extract the corresponding second feedback status from the current feedback; if the second feedback status is failure, reset the first task status to patent parsing failure and proceed to step A8; if the second feedback status is success, send the second verification instruction carrying the first task identifier to the fact verification module 6 and reset the first task status to patent parsing verification. The second feedback status includes failure and success; Step A4: Upon receiving the second verification feedback from the fact-checking module 6, extract the corresponding second verification status from the current feedback; if the second verification status is abnormal, reset the first task status to patent analysis verification abnormal and proceed to step A8; if the second verification status is normal, send the third scheduling instruction carrying the first task identifier to the structure matching agent 4 and reset the first task status to structure matching. The second verification status includes abnormal and normal. Step A5: Upon receiving the third scheduling feedback from the structure matching agent 4, extract the corresponding third feedback state from the current feedback; if the third feedback state is failure, reset the first task state to structure matching failure and proceed to step A8; if the third feedback state is success, send the third verification instruction carrying the first task identifier to the fact verification module 6 and reset the first task state to structure matching verification. The third feedback status includes failure and success; Step A6: Upon receiving the third verification feedback from the fact-checking module 6, extract the corresponding third verification status from the current feedback; if the third verification status is abnormal, reset the first task status to structure matching verification abnormal and proceed to step A8; if the third verification status is normal, send the fourth scheduling instruction carrying the first task identifier to the infringement analysis module 5 and reset the first task status to infringement analysis. The third verification status includes abnormal and normal. Step A7: Upon receiving the fourth scheduling feedback from the infringement analysis module 5, extract the corresponding fourth feedback status from the current feedback; if the fourth feedback status is failure, reset the first task status to infringement analysis failure; if the fourth feedback status is success, reset the first task status to end. The fourth feedback status includes failure and success; Step A8: Package all cached data in the first task cache area to obtain the corresponding first task data package; identify the status of the first task; if the status of the first task is any type of failure or any type of verification exception, generate a corresponding task interruption report based on the status of the first task and the first task data package and report it to the current user, and delete the first task cache area; if the status of the first task is completed, generate a corresponding infringement analysis report based on the first task data package and report it to the current user, and delete the first task cache area.
[0029] (II) Molecular Analysis Module 2: The molecular analysis module 2 in this embodiment of the invention is used to analyze the molecular structure of molecular data and store the analysis results in the corresponding task cache area.
[0030] In another specific implementation of this invention, the molecular analysis module 2 is specifically used when performing molecular structure analysis on molecular data and storing the analysis results in the corresponding task cache area: Step B1: Listen for and receive the first scheduling instruction sent by the task scheduling module 1; and upon receiving the first scheduling instruction, use the first task buffer corresponding to the first task identifier in the current instruction as the current task buffer; and use the queried molecular data in the current task buffer as the current molecular data. Step B2: Identify the data format of the current molecular data; if the current molecular data is a SMILES sequence, use the RDKit tool to convert the current SMILES sequence into a molecular object to obtain the corresponding current molecular object; if the current molecular data is a molecular file, use the RDKit tool to convert the current molecular file into a molecular object to obtain the corresponding current molecular object; and use the RDKit tool to convert the current molecular object into a SMARTS pattern structure to obtain the corresponding first molecular structure, which is then stored in the current task cache. Step B3: If any abnormality occurs during the processing of steps B1-B2, the subsequent processing steps are stopped immediately and the corresponding first feedback status is set to failure. If no abnormality occurs during the processing of steps B1-B2, the corresponding first feedback status is set to success at the end of the processing. When the first feedback status is set, the first scheduling feedback carrying the first feedback status is sent back to the task scheduling module 1.
[0031] (III) Patent Analysis Agent 3: The patent parsing agent 3 in this embodiment of the invention is used to parse the claims of patent documents, identify the molecular skeleton and substituents based on the parsed text, and store the parsing and identification results in the corresponding task cache area.
[0032] The patent analysis intelligent agent 3 has a built-in chemical entity recognition model and a chemical translation model.
[0033] The chemical entity recognition model of this invention is used to perform Markush structural entity recognition of compound molecules on input text. This model is based on a class of NER models in the chemical field; the NER models in the chemical field mentioned in this invention include at least the ChemBERTa model and the SciBERT model.
[0034] The input text for the chemical entity recognition model is a piece of natural language text, and the output of the model is a corresponding first molecular entity set.
[0035] When the first molecular entity set is not empty, it consists of one or more first molecular entities. Each first molecular entity corresponds to a compound molecule, and the entity representation of the first molecular entity satisfies the representation of the Markush structure.
[0036] The first molecular entity includes the first skeletal entity and the first subset of substituents.
[0037] The entity attributes of the first skeleton entity include the first skeleton name and the first skeleton text position. The first skeleton name is the chemical name text of the current molecular skeleton; the first skeleton text position is composed of the character position indices of the start and end characters of the current skeleton name in the current model input text.
[0038] When the first substituent subset is not empty, it consists of one or more first substituent entities. The entity attributes of a first substituent entity include the first substituent label, the first label text position, the first substituent name set, and the first name text position set. Specifically, the first substituent label is the site label of a substituent docking site on the current molecular skeleton; the first label text position consists of the character position indices of the start and end characters of the original text corresponding to the site label in the current model input text; the first substituent name set consists of one or more first substituent names; a first substituent name is the chemical name text of a substituent that can dock with the current molecular skeleton at the current substituent docking site; the first name text position set consists of one or more first substituent text positions; each first substituent text position corresponds one-to-one with a first substituent name; and each first substituent text position consists of the character position indices of the start and end characters of the current substituent name in the current model input text.
[0039] For example, if the natural language text "The structure of compound 1 is: X-benzene ring-CO-NH-Y, where X is selected from methyl or ethyl, and Y is selected from fluorine or chlorine atoms; the structure of compound 2 is: R1-pyridine ring-O-CH2-R2, where R1 is nitro or cyano, and R2 is C1-C3 alkyl (including methyl, ethyl, and n-propyl)" is input into the chemical entity recognition model, the output first molecular entity set includes two first molecular entities A and B.
[0040] The first molecular entity A is: 1) First skeleton entity: The first skeleton name is “Benzene ring-CO-NH”, and the first skeleton text position is [12,19]. 2) First substituent subset: First substituent entity 1: First substituent label “X”, first label text position [10, 10], first substituent name set {"methyl", "ethyl"}, first name text position set {[28, 29], [31, 32]}; First substituent entity 2: First substituent label “Y”, first label text position [21, 21], first substituent name set {"fluorine atom", "chlorine atom"}, first name text position set {[37, 39], [41, 43]}.
[0041] The first molecular entity B is: 1) First skeleton entity: The first skeleton name is “pyridine ring-O-CH2”, and the first skeleton text position is [57,65]. 2) First substituent subset: First substituent entity 1: First substituent label “R1”, first label text position [72, 73], first substituent name set {"nitro", "cyano"}, first name text position set {[75, 76], [78, 79]}; First substituent entity 2: First substituent label “R2”, first label text position [81, 82], first substituent name set {"methyl", "ethyl", "n-propyl"}, first name text position set {[94, 95], [97, 98], [100, 102]}.
[0042] The chemical translation model of this invention is used to perform SMARTS pattern structure transformation on the input text of the model. This model is based on the T5 model or the BART model.
[0043] The chemical translation model takes a natural language text as input and outputs a translation structure that satisfies the SMARTS pattern.
[0044] For example, if the natural language text "acetyl" is input into a chemical translation model, the output translation structure is "CC(=O)-".
[0045] In another specific implementation of this invention, the patent parsing agent 3 is specifically used to: parse the claims of a patent document, identify the molecular skeleton and substituents based on the parsed text, and store the parsing and identification results in the corresponding task cache. Step C1: Listen for and receive the second scheduling instruction sent by the task scheduling module 1; and upon receiving the second scheduling instruction, use the first task cache corresponding to the first task identifier in the current instruction as the current task cache; and use the target patent document in the current task cache as the current patent document. Step C2: Use a preset patent document scanning tool to perform full-text recognition of the text content of the claims of the current patent document to obtain the original text of the corresponding first claim; Here, the patent document scanning tools of this invention include PyPDF2, pdfminer, PDFelement, and the LayOutLM series models; Step C3: The original text of the first claim is used as the model input text and fed into the chemical entity recognition model for compound molecular entity recognition processing to obtain the corresponding first molecular entity set; Step C4: When the first molecular entity set is not empty, add molecular structure attributes to the first molecular entity set using the chemical translation model; Specifically, this includes: using the names of the first skeletons or first substituents in the first molecular entity set as the corresponding current name text; feeding the current name text as the model input text into the chemical translation model for SMARTS pattern structure conversion to obtain the corresponding translation structure, and using the current translation structure as the first skeleton structure or first substituent structure corresponding to the current name text; adding each first skeleton structure as a new entity attribute to the corresponding first skeleton entity; and forming the corresponding first substituent structure set from all the first substituent structures corresponding to each first substituent entity; and adding each first substituent structure set as a new entity attribute to the corresponding first substituent entity. Here, in this embodiment of the invention, the first molecular entity set for which attribute addition is completed consists of one or more first molecular entities; the first molecular entity includes a first skeleton entity and a first substituent subset; the entity attributes of the first skeleton entity include a first skeleton name, a first skeleton text position, and a first skeleton structure; when the first substituent subset is not empty, it consists of one or more first substituent entities; the entity attributes of the first substituent entity include a first substituent label, a first label text position, a set of first substituent names, a set of first name text positions, and a set of first substituent structures; the set of first substituent names consists of one or more first substituent names; the set of first name text positions consists of one or more first substituent text positions; the first substituent text positions correspond one-to-one with the first substituent names; the set of first substituent structures consists of one or more first substituent structures, and the first substituent structures correspond one-to-one with the first substituent names; the first skeleton structure and each first substituent structure are SMARTS pattern structures; Step C5: The first patent analysis report, consisting of the original text of the first claim and the first molecular entity set with added structural attributes, is stored in the current task cache area. Step C6: If any abnormality occurs during the processing of steps C1-C5, the subsequent processing steps are stopped immediately and the corresponding second feedback status is set to failure. If no abnormality occurs during the processing of steps C1-C5, the corresponding second feedback status is set to success at the end of the processing. And when the second feedback status is set, the second scheduling feedback carrying the second feedback status is sent back to the task scheduling module 1.
[0046] (iv) Structure-matching agent 4: In this embodiment of the invention, the structure matching agent 4 is used to analyze the matching structure of the query molecule and the target molecule in the patent document based on the subtask output results of the molecular analysis module 2 and the patent analysis agent 3, and store the analysis results in the corresponding task cache area.
[0047] The structure-matching agent 4 incorporates a substituent recognition model. This model is a targeted fine-tuning model for a class of generative large language models; the generative large language models mentioned here include at least the ChemT5 model, the DeepSeek series models, and the Llama series models.
[0048] The substituent recognition model of this invention is used to take the substructure in the query molecule structure that matches the target skeleton structure as the current skeleton and to identify the substituents in the query molecule structure that dock with the current skeleton.
[0049] The input to the substituent identification model includes the query molecular structure and the target backbone structure. Both the query molecular structure and the target backbone structure are SMARTS pattern structures, with the target backbone structure derived from the target molecule in the patent document.
[0050] The substituent recognition model outputs a second molecular entity that satisfies the Markush structure. The second molecular entity includes a second backbone entity and a subset of second substituents.
[0051] The entity attributes of the second skeleton entity include the second skeleton name and the second skeleton structure. The second skeleton name is the chemical name text of the current skeleton; the second skeleton structure is the corresponding target skeleton structure.
[0052] When the subset of second substituents is not empty, it consists of one or more second substituent entities. The entity attributes of the second substituent entity include the second substituent label, the second substituent name, and the second substituent structure. Specifically, the second substituent label is the site label of a substituent docking site on the current target skeleton; the second substituent name is the chemical name text of a substituent that can dock with the current target skeleton at the current substituent docking site; and the second substituent structure is the SMARTS pattern structure of the current substituent.
[0053] It should be noted that if there is no substructure in the queried molecular structure that matches the target skeleton structure, the corresponding second substituent subset will be empty; if there is a substructure in the queried molecular structure that matches the target skeleton structure, the corresponding second substituent subset will not be empty.
[0054] The structure matching agent 4 is also used to generate a corresponding model training set based on the updated database content and the substituent database 8 each time the Markush structure library 7 completes a database update, and to perform a targeted fine-tuning of the structure matching model based on the current training set.
[0055] In another specific implementation of this invention, the structure matching agent 4 is specifically used to analyze the matching structure of the query molecule and the target molecule in the patent document based on the subtask output results of the molecular analysis module 2 and the patent analysis agent 3, and to store the analysis results in the corresponding task cache area: Step D1: Listen for and receive the third scheduling instruction sent by task scheduling module 1; and upon receiving the third scheduling instruction, take the first task cache corresponding to the first task identifier in the current instruction as the current task cache; take the first molecular structure and the first patent analysis report in the current task cache as the corresponding current queried molecular structure and the current patent analysis report; and take the first molecular entity set in the current patent analysis report as the corresponding target molecular entity set. Step D2: Take the first skeleton structure of each first molecular entity in the target molecular entity set as the corresponding current target skeleton structure; and input the current query molecular structure and the current target skeleton structure into the substituent recognition model for processing to obtain the corresponding second molecular entity; Here, if the second substituent subset of the second molecule entity is empty, it means that there is no substructure in the current query molecule structure that matches the current target skeleton structure, that is, the molecular structures of the current query molecule and the current target skeleton structure are completely mismatched; conversely, if the current second substituent subset is not empty, it means that the skeleton structure of the current query molecule matches the current target molecule, and the second substituent subset at this time consists of all the substituents in the current query molecule that are docked with the current matching skeleton. Step D3: Identify whether the total number of second molecular entities whose second substituent subset is not empty is zero; if yes, set the report content of the corresponding first structure matching report to no matching structure; if no, form a corresponding matching structure record by combining each second molecular entity whose second substituent subset is not empty and its corresponding first molecular entity, and form a corresponding first structure matching report by combining all the obtained matching structure records; and store the obtained first structure matching report in the current task cache area. Here, if the total number of second molecular entities in the second substituent subset is zero, it means that the current query molecule does not match any of the target molecules; otherwise, it means that the current query molecule has a skeletal structure matching relationship with at least one target molecule. Step D4: If any abnormality occurs during the processing of steps D1-D3, the subsequent processing steps are stopped immediately and the corresponding third feedback status is set to failure. If no abnormality occurs during the processing of steps D1-D3, the corresponding third feedback status is set to success at the end of the processing. When the third feedback status is set, the third scheduling feedback carrying the third feedback status is sent back to the task scheduling module 1.
[0056] (v) Infringement Analysis Module 5: In this embodiment of the invention, the infringement analysis module 5 is used to perform patent infringement analysis based on the subtask output results of the structure matching agent 4 and store the analysis results in the corresponding task cache area.
[0057] In another specific implementation of this invention, the infringement analysis module 5 is specifically used to perform patent infringement analysis based on the subtask output of the structure matching agent 4 and store the analysis results in the corresponding task cache area: Step E1: Listen for and receive the fourth scheduling instruction sent by the task scheduling module 1; and upon receiving the fourth scheduling instruction, take the first task buffer corresponding to the first task identifier in the current instruction as the current task buffer; and take the first structure matching report in the current task buffer as the corresponding current matching report. Step E2: Identify whether the content of the current matching report has no matching structure; Step E3: If the content of the current matching report is without a matching structure, then set the content of the corresponding first analysis report to have no infringement risk. Step E4: If the content of the current matching report is not a no-match structure, then perform substituent alignment between the query molecule and the patent target molecule according to the current matching report and generate the corresponding first analysis report based on the alignment results. Specifically, this includes: taking each matching structure record in the current matching report as the current record; taking the first molecular entity and the second molecular entity in the current record as the corresponding current patent target molecule and current query molecule; performing a round of traversal on all second substituents of the current query molecule; during this round of traversal, taking the second substituent currently traversed as the current substituent, and taking the second substituent label, second substituent name, and second substituent structure of the current substituent as the current label, current name, and current structure; taking the first substituent entity in the current patent target molecule whose first substituent label matches the current label as the current entity; and identifying whether the current entity is empty; if so, setting the corresponding first alignment result to no matching substituent; if not, then taking the first substituent entity in the current entity that matches the current... The first substituent name that matches the previous name and the first substituent structure that matches the current structure are used as the corresponding current matching name and current matching structure. It is also identified whether the current matching name and current matching structure are both empty. If so, the corresponding first alignment result is set to "no matching substituent". Otherwise, the first alignment result is composed of a set of first substituent labels, first substituent names and first substituent structures in the current entity that correspond to the current substituent. The current substituent and its corresponding first alignment result are combined to form a corresponding first alignment record. At the end of this round of traversal, all the first alignment records obtained in this round of traversal are combined to form a first alignment report corresponding to the current patent target molecule. All the first alignment reports corresponding to the current matching report are combined to form a corresponding first analysis report. Step E5: Store the obtained first analysis report in the current task cache. In step E6, if any abnormality occurs during the processing of steps E1-E5, the subsequent processing steps are stopped immediately and the corresponding fourth feedback status is set to failure. If no abnormality occurs during the processing of steps E1-E5, the corresponding fourth feedback status is set to success at the end of the processing. When the fourth feedback status is set, the fourth scheduling feedback carrying the fourth feedback status is sent back to the task scheduling module 1.
[0058] In another specific implementation of this invention, the structure matching agent 4 is specifically used to generate a corresponding model training set based on the currently updated database content and the substituent database 8, and to perform a targeted fine-tuning of the structure matching model based on the current training set: The corresponding molecular update set is composed of all molecular structure samples updated in the Markush structure library 7; the first dataset is constructed by using the molecular update set and the substituent database 8 as the model training set; a corresponding copy model is generated by replicating the structure matching model; the copy model is fine-tuned according to the first dataset using supervised model training; and the structure matching model is updated based on the model parameters of the copy model at the end of this fine-tuning training. The first dataset includes multiple first data records; each first data record includes a training molecular structure, a training backbone structure, and a labeled molecular entity; the data structures of the training molecular structure, the training backbone structure, and the labeled molecular entity are consistent with the query molecular structure, the target backbone structure, and the second molecular entity corresponding to the substituent recognition model.
[0059] In another specific implementation of this invention, the structure matching agent 4 is specifically used when constructing the corresponding first dataset based on the molecule update set and the substituent database 8 to build the model training set: Step F1: Count the total number of molecular structure samples in the molecular update set to obtain the corresponding total number Q; Step F2: Take each molecular structure sample in the molecular update set as the current molecular sample; and take the sample skeleton entity and sample substituent subset of the current molecular sample as the corresponding current sample skeleton entity and current sample substituent subset. Step F3: Take the sample skeleton structure of the current sample skeleton entity as the corresponding current positive sample skeleton; and select a heterogeneous skeleton that does not match the current positive sample skeleton from the Markush structure library 7 as the corresponding current negative sample skeleton. Step F4: Based on the current sample substituent subset, identify all substituent combinations that dock with the current sample skeleton; and obtain the substituent structure set corresponding to each substituent combination by querying the substituent database 8. Wherein, the total number of sample substituent entities in the current sample substituent subset is denoted as N; the sample substituent label of each sample substituent entity in the current sample substituent subset is denoted as the corresponding docking site R. i Each docking point R i The names of the corresponding optional substituents are denoted as the corresponding substituent name r. i,j ; 1 ≤ point index i ≤ N, 1 ≤ substituent index j ≤ n i n i For docking point R i The corresponding substituent name r i,j The total number; the total number M of substituent combinations corresponding to the current sample substituent subset is Each substituent combination consists of N corresponding substituent names r. i,j composition; There is a one-to-one correspondence between the set of substituent structures and the combination of substituents; each set of substituent structures consists of N substituent structures s i Composition; structure of each substituent s i This is a sample of substituent structures selected from the substituent database 8; each set of substituent structures contains substituent structures s. i The sample substituent name, and the substituent name r in the corresponding substituent combination. i,j One-to-one correspondence; Step F5, and set each substituent structure set as the current structure set; then use the RDKit tool to compare the current positive sample skeleton with all substituent structures in the current structure set. i The docking process generates a corresponding current molecular object, and the RDKit tool is used to perform SMARTS pattern structure conversion on the current molecular object, and the conversion result is used as a corresponding training molecular structure. Step F6: Generate a corresponding training backbone structure based on the current positive sample backbone and denote it as backbone A; generate a corresponding tag molecule entity based on the current sample backbone entity and each set of substituent structures; and form a corresponding first data record by backbone A and a set of training molecule structures and tag molecule entities corresponding to each set of substituent structures. Step F7: Generate a corresponding training backbone structure based on the current negative sample backbone and denote it as backbone B; set an empty set of substituent structures as the current structure set corresponding to backbone B; take the sample backbone entity corresponding to backbone B in Markush structure library 7 as the current backbone entity; generate a tag molecule entity corresponding to backbone B based on the current backbone entity and the current structure set; and form a corresponding first data record by combining the training molecule structure corresponding to each substituent structure set, backbone B and its corresponding tag molecule entity. Step F8: The obtained 2M first data records form a first record subset corresponding to the current molecular sample; Step F9: The first dataset is composed of the Q subsets of the first records obtained.
[0060] (vi) Fact Check Module 6: The fact-checking module 6 in this embodiment of the invention is used to perform fact-checking on the subtask output results of the molecular analysis module 2, the patent analysis agent 3, or the structure matching agent 4 specified by the verification instruction of the task scheduling module 1, and update the corresponding task cache based on the verification results.
[0061] In another specific implementation of this invention, the fact-checking module 6 is specifically used to perform fact-checking on the subtask output results of the molecular analysis module 2, the patent analysis agent 3, or the structure matching agent 4 specified by the verification instruction of the task scheduling module 1, and to update the corresponding task cache based on the verification results: Step G1: Listen for and receive the verification command sent by task scheduling module 1; Step G2, and upon receiving the first verification instruction, perform fact-checking on whether the molecular structure output by the molecular analysis module 2 is the same molecule as the original queried molecular data, and update the corresponding task cache based on the verification result; Step G3, and upon receiving the second verification instruction, verify whether the molecular entity output by the patent analysis agent 3 matches the original text of the claims, perform chemical rationality verification on the output molecular entity, and update the corresponding task cache based on the verification results; Step G4 involves verifying each report record in the structure matching report output by the structure matching agent 4 upon receiving the third verification instruction, and updating the corresponding task cache based on the verification results.
[0062] In another specific implementation of this invention, the fact-checking module 6 is specifically used to perform fact-checking on whether the molecular structure output by the molecular analysis module 2 is the same molecule as the original queried molecular data, and to update the corresponding task cache based on the fact-checking result: Step H1: Take the first task cache area corresponding to the first task identifier in the current first verification instruction as the current task cache area; and take the query molecule data and the first molecular structure in the current task cache area as the corresponding current query molecule data and current molecular structure. Step H2 involves identifying the data format of the currently queried molecular data. If the current queried molecular data is a SMILES sequence, the RDKit tool is used to convert the current SMILES sequence into a molecular object to obtain the corresponding first molecular object. If the current queried molecular data is a molecular file, the RDKit tool is used to convert the current molecular file into a molecular object to obtain the corresponding first molecular object. The RDKit tool is then used to convert the current molecular structure into a molecular object to obtain the corresponding second molecular object. Step H3: Use the RDKit tool to confirm whether the first and second molecular objects are the same molecule. If they are confirmed to be the same molecule, set the corresponding first verification report to "Molecular analysis task verification passed" and set the corresponding first verification status to "normal". If they are confirmed to be different molecules, set the corresponding first verification report to "Molecular analysis task verification failed" and set the corresponding first verification status to "abnormal". Store the first verification report in the current task cache area and send the first verification feedback carrying the first verification status back to the task scheduling module 1.
[0063] In another specific implementation of this invention, the fact-checking module 6 is specifically used to check whether the molecular entity output by the patent parsing agent 3 matches the original claim, to verify the chemical rationality of the output molecular entity, and to update the corresponding task cache based on the verification results: Step I1: Take the first task cache area corresponding to the first task identifier in the current second verification instruction as the current task cache area; and extract the corresponding first claim text and first molecular entity set from the first patent analysis report in the current task cache area; Step I2 involves taking each first skeleton name or each first substituent name of the first molecular entity set as the corresponding current name text; taking the first skeleton text position or first substituent text position corresponding to the current name text as the corresponding current text position; extracting the subtext corresponding to the current text position in the original text of the first claim as the corresponding current alignment text; identifying whether the current alignment text matches the current name text; if they match, setting the corresponding name alignment result as successful; if they do not match, setting the corresponding name alignment result as failed; and forming the corresponding name alignment record from the current name text, the current text position, and the text alignment result; and forming the corresponding name alignment report from all the obtained name alignment records. Step I3: Each first substituent label in the first molecular entity set is used as the corresponding current label text; the position of the first label text corresponding to the current label text is used as the corresponding current label position; the subtext corresponding to the current label position in the original text of the first claim is extracted as the corresponding current alignment text; the current alignment text and the current label text are used to identify whether they refer to the same docking site; if so, the corresponding label alignment result is set to successful; if not, the corresponding label alignment result is set to failed; the current label text, the current label position, and the label alignment result form the corresponding label alignment record; and all obtained label alignment records form the corresponding label alignment report. Step I4: Take each first molecular entity in the first molecular entity set as the corresponding current molecular entity; use the RDKit tool to convert the current molecular entity into a molecular object to obtain the corresponding current molecular object; use the RDKit tool to verify the chemical rationality of the current molecular object to obtain the corresponding first rationality verification result; and use the current molecular entity and its corresponding first rationality verification result to form the corresponding chemical rationality verification record; and use all the obtained chemical rationality verification records to form the corresponding chemical rationality verification report. The first rationality verification result includes success and failure; Step I5: The corresponding second verification report, consisting of the name comparison report, the label comparison report, and the chemical rationality verification report, is stored in the current task cache. The system then identifies whether all the obtained name comparison results, label comparison results, and first rationality verification results are successful. If so, the corresponding second verification status is set to normal; otherwise, the corresponding second verification status is set to abnormal. The second verification feedback carrying the second verification status is then sent back to the task scheduling module 1.
[0064] In another specific implementation of this invention, the fact-checking module 6 is specifically used to check each report record of the structure matching report output by the structure matching agent 4 and update the corresponding task cache based on the check results: Step J1: Take the first task cache area corresponding to the first task identifier in the current third verification instruction as the current task cache area; and take the first structure matching report in the current task cache area as the current structure matching report; Step J2, and identify whether the report content of the current structure matching report is a structure without matching; Step J3: If the current structure matching report has no matching structure, then set the corresponding third verification report to have no verification structure. Step J4: If the current structure matching report does not show no matching structure, then each matching structure record in the current structure matching report is taken as the current record; the corresponding first and second molecular entities are extracted from the current record; the skeleton names and skeleton structures of the first and second skeleton entities of the current first and second molecular entities are identified as being the same. If they are, the corresponding skeleton alignment result is set to successful; otherwise, the corresponding skeleton alignment result is set to failed; the RDKit tool is used to convert the current second molecular entity into a molecular object to obtain the corresponding current molecular object; the RDKit tool is used to verify the chemical rationality of the current molecular object to obtain the corresponding second rationality verification result; the current first and second molecular entities, the corresponding skeleton alignment result, and the second rationality verification result are combined to form the corresponding matching structure verification record; and all the obtained matching structure verification records are combined to form the corresponding third verification report. The second rationality verification result includes success and failure; Step J5 involves identifying whether the obtained third verification report is a structure without verification. If so, the corresponding third verification status is set to normal. If not, it involves identifying whether all skeleton comparison results and all second rationality verification results corresponding to the current third verification report are successful. If so, the corresponding third verification status is set to normal; otherwise, the corresponding third verification status is set to abnormal. The third verification report is then stored in the current task cache area, and the third verification feedback carrying the third verification status is sent back to the task scheduling module 1.
[0065] (vii) Markush structure library 7, substituent database 8: Markush Structure Library 7 is used to store multiple molecular structure samples.
[0066] Substituent Database 8 is used to store multiple substituent structure samples.
[0067] Each molecular structure sample in Markush Structure Library 7 is a Markush structure of a compound molecule, consisting of a corresponding sample backbone entity and a sample substituent subset. The entity attributes of the sample backbone entity include the sample backbone name and sample backbone structure; the sample backbone name is the chemical name text of the current molecular backbone; the sample backbone structure is a SMARTS pattern structure. The sample substituent subset consists of one or more sample substituent entities. The entity attributes of the sample substituent entities include the sample substituent label and a set of optional substituent names; the optional substituent name set consists of one or more optional substituent names; the optional substituent name is the chemical name text of a class of substituents that can dock with the current molecular backbone at the current substituent docking site.
[0068] Each substituent structure sample in Substituent Database 8 consists of a corresponding sample substituent name and sample substituent structure; the sample substituent structure is a SMARTS pattern structure.
[0069] In the above embodiments, implementation can be achieved, in whole or in part, through software, hardware, firmware, or any combination thereof. When implemented in software, it can be implemented, in whole or in part, as a computer program product. This computer program product includes one or more computer instructions. When these computer program instructions are loaded and executed on a computer, all or part of the processes or functions described in the foregoing method embodiments are generated. The computer described above can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The aforementioned computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the aforementioned computer instructions can be transmitted from one website, computer, server, or data center to another via wired (e.g., coaxial cable, fiber optic, Digital Subscriber Line (DSL)) or wireless (e.g., infrared, wireless, Bluetooth, microwave, etc.) means. The aforementioned computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that integrates one or more available media. The aforementioned available media can be magnetic media (e.g., floppy disks, hard disks, magnetic tapes), optical media (e.g., DVDs), or semiconductor media (e.g., solid-state disks (SSDs)).
[0070] This invention provides an intelligent agent analysis system for patent infringement analysis of molecular structures. The system includes: a task scheduling module, a molecular analysis module, a patent analysis intelligent agent, a structure matching intelligent agent, an infringement analysis module, a fact-checking module, a Markush structure library, and a substituent database. The task scheduling module initializes the task cache based on the user-input queried molecular data and target patent documents. It then sequentially schedules the subtask processing of the molecular analysis module, patent analysis agent, and structure matching agent by sending scheduling commands. Upon completion of each subtask scheduling, it sends a verification command to instruct the fact-checking module to perform fact-checking on the current subtask's output. Only after all subtasks have successfully completed the verification is the infringement analysis module scheduled to generate a corresponding infringement analysis report and provide it to the user. The molecular analysis module performs molecular structure analysis on the molecular data. The patent analysis agent performs claim analysis on the patent documents and identifies the molecular skeleton and substituents based on the analyzed text. The structure matching agent analyzes the matching structures of the queried molecule and the target molecule in the patent document based on the subtask outputs of the molecular analysis module and the patent analysis agent. The infringement analysis module performs patent infringement analysis based on the subtask outputs of the structure matching agent. The fact-checking module performs fact-checking on the subtask outputs of the molecular analysis module, the patent analysis agent, or the structure matching agent. Furthermore, the structure matching agent is also used to generate a corresponding model training set based on the updated database content and the subbase database each time the Markush structure library completes a database update, and to perform a targeted fine-tuning of the structure matching model based on the current training set. The system of this embodiment is implemented based on a multi-agent system framework with multiple model agents; this embodiment decomposes the patent infringement analysis task into multiple specialized sub-tasks and schedules different sub-task modules / agents to execute them separately, and introduces a step-by-step verification mechanism through a fact-checking module; this embodiment not only improves the parsing accuracy at each step, but also improves the analysis quality of the final output.
[0071] Those skilled in the art will further recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the various examples have been generally described in terms of functionality in the foregoing description. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementations should not be considered beyond the scope of this invention.
[0072] The steps of the methods or algorithms described in conjunction with the embodiments disclosed herein can be implemented in hardware, a software module executed by a processor, or a combination of both. The software module can be located in random access memory (RAM), main memory, read-only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, removable disk, CD-ROM, or any other form of storage medium known in the art.
[0073] The specific embodiments described above further illustrate the purpose, technical solution, and beneficial effects of the present invention. It should be understood that the above description is only a specific embodiment of the present invention and is not intended to limit the scope of protection of the present invention. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the scope of protection of the present invention.
Claims
1. An intelligent agent analysis system for patent infringement analysis of molecular structures, characterized in that, The system includes: a task scheduling module, a molecular analysis module, a patent analysis agent, a structure matching agent, an infringement analysis module, a fact-checking module, a Markush structure library, and a substituent database; The task scheduling module is connected to the molecular analysis module, the patent analysis agent, the structure matching agent, the infringement analysis module, and the fact-checking module, respectively; the structure matching agent is connected to the Markush structure library and the substituent database, respectively. The task scheduling module is used to initialize a task cache area based on the user-input queried molecular data and target patent document to obtain a first task cache area; and to sequentially schedule the sub-task processing of the molecular analysis module, the patent analysis agent, and the structure matching agent by sending scheduling instructions. Upon completion of each sub-task scheduling, a verification instruction is sent to instruct the fact-checking module to perform fact-checking on the current sub-task output. If all sub-tasks return successful and the verification is normal, the infringement analysis module is scheduled to generate a corresponding infringement analysis report and provide it to the current user. The queried molecular data is a SMILES sequence or a molecular file; the target patent document is a PDF file. The molecular analysis module is used to analyze the molecular structure of molecular data and store the analysis results in the corresponding task cache area. The patent analysis agent is used to analyze the claims of patent documents and identify molecular skeletons and substituents based on the analyzed text, and store the analysis and identification results in the corresponding task cache area; the patent analysis agent has built-in chemical entity recognition model and chemical translation model; the chemical entity recognition model is used to identify Markush structure entities of compound molecules in the model input text; the chemical translation model is used to perform SMARTS pattern structure conversion in the model input text; The structure matching agent is used to analyze the matching structures of the query molecule and the target molecule in the patent document based on the subtask outputs of the molecular analysis module and the patent analysis agent, and to store the analysis results in the corresponding task cache. The structure matching agent has a built-in substituent recognition model. The model input of the substituent recognition model includes the query molecule structure and the target skeleton structure, wherein the target skeleton structure comes from the target molecule in the patent document. The substituent recognition model is used to take the substructure in the query molecule structure that matches the target skeleton structure as the current skeleton and to identify the substituents in the query molecule structure that dock with the current skeleton. The structure matching agent is also used to generate a corresponding model training set based on the updated database content and the substituent database each time the Markush structure library completes a database update, and to perform a targeted fine-tuning of the structure matching model based on the current training set. The infringement analysis module is used to perform patent infringement analysis based on the subtask output results of the structure matching agent and store the analysis results in the corresponding task cache area. The fact-checking module is used to perform fact-checking on the subtask output results of the molecular analysis module, the patent analysis agent, or the structure matching agent specified by the verification instruction of the task scheduling module, and update the corresponding task cache based on the verification results; The Markush structure library is used to store multiple molecular structure samples; The substituent database is used to store multiple substituent structure samples.
2. The intelligent agent analysis system for patent infringement analysis of molecular structures according to claim 1, characterized in that, The first task cache is used to store the first task identifier, the first task status, the queried molecular data, the target patent document, the first molecular structure, the first patent analysis report, the first structure matching report, the first analysis report, the first verification report, the second verification report, and the third verification report; The first molecular structure is the output data of the molecular analysis module; The first patent analysis report is the output data of the patent analysis intelligent agent; The first structure matching report is the output data of the structure matching agent; The first analysis report is the output data of the infringement analysis module; The first verification report, the second verification report, and the third verification report are the output data of the fact-checking module; The first task status includes initial, molecular analysis, molecular analysis failure, molecular analysis verification, molecular analysis verification anomaly, patent analysis, patent analysis failure, patent analysis verification, patent analysis verification anomaly, structure matching, structure matching failure, structure matching verification, structure matching verification anomaly, infringement analysis, infringement analysis failure, and end; The chemical entity recognition model is based on a class of NER models in the chemical field; the NER models in the chemical field include the ChemBERTa model and the SciBERT model. The input text of the chemical entity recognition model is a piece of natural language text, and the output of the model is a corresponding first molecular entity set; when the first molecular entity set is not empty, it consists of one or more first molecular entities; each first molecular entity corresponds to a compound molecule, and the entity representation of the first molecular entity satisfies the expression of the Markush structure. The first molecular entity includes a first skeleton entity and a first subset of substituents; The entity attributes of the first skeleton entity include the first skeleton name and the first skeleton text position; the first skeleton name is the chemical name text of the current molecular skeleton; the first skeleton text position is composed of the character position indexes of the start and end characters of the current skeleton name in the current model input text; When the first substituent subset is not empty, it consists of one or more first substituent entities. The entity attributes of the first substituent entities include a first substituent label, a first label text position, a set of first substituent names, and a set of first name text positions. The first substituent label is the position label of a substituent docking site on the current molecular skeleton. The first label text position is composed of the character position indices of the start and end characters of the original text corresponding to the position label in the current model input text. The first substituent name set consists of one or more first substituent names. The first substituent name is the chemical name text of a substituent that can dock with the current molecular skeleton at the current substituent docking site. The first name text position set consists of one or more first substituent text positions. The first substituent text positions correspond one-to-one with the first substituent names. The first substituent text positions are composed of the character position indices of the start and end characters of the current substituent name in the current model input text. The chemical translation model is implemented based on the T5 model or the BART model; The chemical translation model takes a sentence of natural language text as input and outputs a translation structure that satisfies the SMARTS pattern. The substituent recognition model is a targeted fine-tuning model of a type of generative large language model; the generative large language model includes the ChemT5 model, the DeepSeek series models, and the Llama series models; The query molecular structure and the target backbone structure input to the substituent recognition model are both SMARTS pattern structures; the model output of the substituent recognition model is a second molecular entity that satisfies the Markush structure. The second molecular entity includes a second skeletal entity and a second subset of substituents; If the queried molecular structure does not have a substructure that matches the target skeleton structure, the corresponding second substituent subset is empty; if the queried molecular structure has a substructure that matches the target skeleton structure, the corresponding second substituent subset is not empty. The entity attributes of the second skeleton entity include the second skeleton name and the second skeleton structure; the second skeleton name is the chemical name text of the current skeleton; the second skeleton structure is the corresponding target skeleton structure; When the second substituent subset is not empty, it consists of one or more second substituent entities; the entity attributes of the second substituent entity include the second substituent label, the second substituent name, and the second substituent structure; the second substituent label is the site label of a substituent docking site on the current target skeleton; the second substituent name is the chemical name text of a type of substituent that can dock with the current target skeleton at the current substituent docking site; the second substituent structure is the SMARTS pattern structure of the current substituent; Each molecular structure sample in the Markush structure library is a Markush structure of a compound molecule, consisting of a corresponding sample backbone entity and a sample substituent subset. The entity attributes of the sample backbone entity include the sample backbone name and sample backbone structure. The sample backbone name is the chemical name text of the current molecular backbone. The sample backbone structure is a SMARTS pattern structure. The sample substituent subset consists of one or more sample substituent entities. The entity attributes of the sample substituent entities include the sample substituent label and a set of optional substituent names. The set of optional substituent names consists of one or more optional substituent names. The optional substituent name is the chemical name text of a type of substituent that can dock with the current molecular backbone at the current substituent docking site. Each substituent structure sample in the substituent database consists of a corresponding sample substituent name and a sample substituent structure; the sample substituent structure is a SMARTS pattern structure.
3. The intelligent agent analysis system for patent infringement analysis of molecular structures according to claim 2, characterized in that, The task scheduling module is specifically used when the first task cache is obtained by initializing the task cache based on the user-input queried molecular data and target patent documents: Upon receiving the queried molecule data and the target patent document, a corresponding data cache is initialized for the current task as the first task cache; and a corresponding task identifier is assigned to the current task as the first task identifier. The first task status is set to initial; and the first task identifier, the first task status, the queried molecule data, and the target patent document are stored in the first task cache area.
4. The intelligent agent analysis system for patent infringement analysis of molecular structures according to claim 2, characterized in that, The task scheduling module is specifically used to sequentially schedule the subtask processing of the molecular analysis module, the patent analysis agent, and the structure matching agent by sending scheduling instructions, and to send a verification instruction to instruct the fact-checking module to perform fact-checking on the output result of the current subtask upon completion of each subtask scheduling, and to schedule the infringement analysis module to generate a corresponding infringement analysis report and provide it to the current user when all subtasks have returned successful feedback and the verification is normal: Step 41: When the first task state is initial, send the first scheduling instruction carrying the first task identifier to the molecular analysis module and reset the first task state to molecular analysis. Step 42: Upon receiving the first scheduling feedback from the molecular analysis module, extract the corresponding first feedback status from the current feedback; if the first feedback status is failure, reset the first task status to molecular analysis failure and proceed to step 48; if the first feedback status is success, send the first verification instruction carrying the first task identifier to the fact verification module and reset the first task status to molecular analysis verification. The first feedback status includes failure and success; Step 42: Upon receiving the first verification feedback from the fact-checking module, extract the corresponding first verification status from the current feedback; if the first verification status is abnormal, reset the first task status to molecular analysis verification abnormal and proceed to step 48; if the first verification status is normal, send the second scheduling instruction carrying the first task identifier to the patent analysis agent and reset the first task status to patent analysis. The first verification status includes abnormal and normal. Step 43: Upon receiving the second scheduling feedback sent back by the patent parsing agent, extract the corresponding second feedback status from the current feedback; if the second feedback status is failure, reset the first task status to patent parsing failure and proceed to step 48; if the second feedback status is success, send the second verification instruction carrying the first task identifier to the fact verification module and reset the first task status to patent parsing verification. The second feedback status includes failure and success; Step 44: Upon receiving the second verification feedback from the fact-checking module, extract the corresponding second verification status from the current feedback; if the second verification status is abnormal, reset the first task status to patent analysis verification abnormal and proceed to step 48; if the second verification status is normal, send the third scheduling instruction carrying the first task identifier to the structure matching agent and reset the first task status to structure matching. The second verification status includes abnormal and normal. Step 45: Upon receiving the third scheduling feedback from the structure matching agent, extract the corresponding third feedback state from the current feedback; if the third feedback state is a failure, reset the first task state to structure matching failure and proceed to step 48; if the third feedback state is a success, send the third verification instruction carrying the first task identifier to the fact verification module and reset the first task state to structure matching verification. The third feedback status includes failure and success; Step 46: Upon receiving the third verification feedback from the fact-checking module, extract the corresponding third verification status from the current feedback; if the third verification status is abnormal, reset the first task status to structure matching verification abnormal and proceed to step 48; if the third verification status is normal, send the fourth scheduling instruction carrying the first task identifier to the infringement analysis module and reset the first task status to infringement analysis. The third verification status includes abnormal and normal. Step 47: Upon receiving the fourth scheduling feedback from the infringement analysis module, extract the corresponding fourth feedback status from the current feedback; if the fourth feedback status is failure, reset the first task status to infringement analysis failure; if the fourth feedback status is success, reset the first task status to end. The fourth feedback status includes failure and success; Step 48: Package all cached data in the first task cache area to obtain the corresponding first task data package; and identify the status of the first task; if the first task status is any type of failure or any type of verification anomaly, generate a corresponding task interruption report based on the first task status and the first task data package and provide feedback to the current user, and delete the first task cache area; if the first task status is completed, generate the corresponding infringement analysis report based on the first task data package and provide feedback to the current user, and delete the first task cache area.
5. The intelligent agent analysis system for patent infringement analysis of molecular structures according to claim 2, characterized in that, The molecular analysis module is specifically used when performing molecular structure analysis on molecular data and storing the analysis results in the corresponding task cache: Step 51: Listen for and receive the first scheduling instruction sent by the task scheduling module; and when the first scheduling instruction is received, use the first task buffer corresponding to the first task identifier in the current instruction as the current task buffer. And the queried molecular data in the current task cache is used as the current molecular data; Step 52: Identify the data format of the current molecular data; If the current molecular data is a SMILES sequence, the RDKit tool is used to convert the current SMILES sequence into a molecular object to obtain the corresponding current molecular object; if the current molecular data is a molecular file, the RDKit tool is used to convert the current molecular file into a molecular object to obtain the corresponding current molecular object; and the RDKit tool is used to convert the current molecular object into a SMARTS pattern structure to obtain the corresponding first molecular structure, which is then stored in the current task cache. Step 53: If any abnormality occurs during the processing of steps 51-52, the subsequent processing steps are stopped immediately and the corresponding first feedback status is set to failure. If no abnormality occurs during the processing of steps 51-52, the corresponding first feedback status is set to success at the end of the processing. And when the first feedback status is set, the first scheduling feedback carrying the first feedback status is sent back to the task scheduling module.
6. The intelligent agent analysis system for patent infringement analysis of molecular structures according to claim 2, characterized in that, The patent parsing agent is specifically used when parsing the claims of a patent document, identifying the molecular skeleton and substituents based on the parsed text, and storing the parsing and identification results in the corresponding task cache: Step 61: Listen for and receive the second scheduling instruction sent by the task scheduling module; and upon receiving the second scheduling instruction, use the first task cache corresponding to the first task identifier in the current instruction as the current task cache; and use the target patent document in the current task cache as the current patent document. Step 62: Use a preset patent document scanning tool to perform full-text recognition of the text content of the claims of the current patent document to obtain the corresponding original text of the first claim; The patent document scanning tools include PyPDF2, pdfminer, PDFelement, and the LayOutLM series of models; Step 63: Input the original text of the first claim as the model input text into the chemical entity recognition model to perform compound molecular entity recognition processing to obtain the corresponding first molecular entity set; Step 64: When the first molecular entity set is not empty, add molecular structure attributes to the first molecular entity set using the chemical translation model, specifically as follows: Each of the first skeleton names or first substituent names in the first molecular entity set is used as the corresponding current name text; the current name text is then fed into the chemical translation model as model input text to perform SMARTS pattern structure conversion processing to obtain the corresponding translation structure, and the current translation structure is used as the first skeleton structure or first substituent structure corresponding to the current name text; each of the first skeleton structures is added as a new entity attribute to the corresponding first skeleton entity; and all the first substituent structures corresponding to each of the first substituent entities form the corresponding first substituent structure set; and each set of the first substituent structures is added as a new entity attribute to the corresponding first substituent entity; The first molecular entity set after attribute addition consists of one or more first molecular entities; the first molecular entity includes the first skeleton entity and the first substituent subset; the entity attributes of the first skeleton entity include the first skeleton name, the first skeleton text position, and the first skeleton structure; when the first substituent subset is not empty, it consists of one or more first substituent entities; the entity attributes of the first substituent entity include the first substituent label, the first label text position, the first substituent name set, the first name text position set, and the first substituent structure set; the first substituent name set consists of one or more first substituent names; the first name text position set consists of one or more first substituent text positions; the first substituent text position corresponds one-to-one with the first substituent name; the first substituent structure set consists of one or more first substituent structures, and the first substituent structure corresponds one-to-one with the first substituent name; the first skeleton structure and each of the first substituent structures are SMARTS pattern structures; Step 65: The first patent analysis report, consisting of the original text of the first claim and the first molecular entity set with added structural attributes, is stored in the current task cache area. Step 66: If any abnormality occurs during the processing of steps 61-65, the subsequent processing steps are stopped immediately and the corresponding second feedback status is set to failure. If no abnormality occurs during the processing of steps 61-65, the corresponding second feedback status is set to success at the end of the processing. And when the second feedback status is set, the second scheduling feedback carrying the second feedback status is sent back to the task scheduling module.
7. The intelligent agent analysis system for patent infringement analysis of molecular structures according to claim 6, characterized in that, The structure matching agent is specifically used when analyzing the matching structure of the query molecule and the target molecule in the patent document based on the subtask output results of the molecular analysis module and the patent analysis agent, and storing the analysis results in the corresponding task cache area: Step 71: Listen for and receive the third scheduling instruction sent by the task scheduling module; and upon receiving the third scheduling instruction, take the first task cache corresponding to the first task identifier in the current instruction as the current task cache; take the first molecular structure and the first patent analysis report in the current task cache as the corresponding current queried molecular structure and current patent analysis report; and take the first molecular entity set in the current patent analysis report as the corresponding target molecular entity set. Step 72: Take the first skeleton structure of each first molecular entity in the target molecular entity set as the corresponding current target skeleton structure; and input the current query molecular structure and the current target skeleton structure into the substituent recognition model for processing to obtain the corresponding second molecular entity; Step 73: Identify whether the total number of second molecular entities whose second substituent subset is not empty is zero; if yes, set the report content of the corresponding first structure matching report to no matching structure; if no, form a corresponding matching structure record by each second molecular entity whose second substituent subset is not empty and its corresponding first molecular entity, and form the corresponding first structure matching report by all the obtained matching structure records. The obtained first structure matching report is then stored in the current task cache area; Step 74: If any abnormality occurs during the processing of steps 71-73, the subsequent processing steps are stopped immediately and the corresponding third feedback status is set to failure. If no abnormality occurs during the processing of steps 71-73, the corresponding third feedback status is set to success at the end of the processing. And when the third feedback status is set, the third scheduling feedback carrying the third feedback status is sent back to the task scheduling module.
8. The intelligent agent analysis system for patent infringement analysis of molecular structures according to claim 7, characterized in that, The infringement analysis module is specifically used when performing patent infringement analysis based on the subtask output of the structure matching agent and storing the analysis results in the corresponding task cache: Step 81: Listen for and receive the fourth scheduling instruction sent by the task scheduling module; and when the fourth scheduling instruction is received, use the first task buffer corresponding to the first task identifier in the current instruction as the current task buffer. And the first structure matching report in the current task cache is used as the corresponding current matching report; Step 82: Identify whether the content of the current matching report has no matching structure; Step 83: If the report content of the current matching report is a no-match structure, then set the report content of the corresponding first analysis report to be free of infringement risk. Step 84: If the content of the current matching report is not a no-match structure, then perform substituent alignment between the query molecule and the patent target molecule according to the current matching report and generate the corresponding first analysis report based on the alignment results. Specifically, the process involves: recording each matching structure in the current matching report as the current record; using the first molecular entity and the second molecular entity in the current record as the corresponding current patent target molecule and current query molecule; performing a round of traversal on all second substituents in the current query molecule; during this round of traversal, using the currently traversed second substituent as the current substituent, and using the second substituent label, second substituent name, and second substituent structure of the current substituent as the current label, current name, and current structure; and using the first substituent entity in the current patent target molecule whose first substituent label matches the current label as the current entity; and identifying whether the current entity is empty; if so, setting the corresponding first alignment result to no matching substituent; if not, then using the current entity that matches the current... The first substituent name that matches the name and the first substituent structure that matches the current structure are used as the corresponding current matching name and current matching structure. The system identifies whether the current matching name and current matching structure are both empty. If so, the corresponding first alignment result is set to "no matching substituent." Otherwise, the first alignment result is composed of a set of first substituent labels, first substituent names, and first substituent structures corresponding to the current substituent in the current entity. A corresponding first alignment record is formed by the current substituent and its corresponding first alignment result. At the end of this round of traversal, all the first alignment records obtained in this round of traversal form the first alignment report corresponding to the current patent target molecule. All the first alignment reports corresponding to the current matching report form the corresponding first analysis report. Step 85: Store the obtained first analysis report into the current task cache area; Step 86: If any abnormality occurs during the processing of steps 81-85, the subsequent processing steps are stopped immediately and the corresponding fourth feedback status is set to failure. If no abnormality occurs during the processing of steps 81-85, the corresponding fourth feedback status is set to success at the end of the processing. And when the fourth feedback status is set, the fourth scheduling feedback carrying the fourth feedback status is sent back to the task scheduling module.
9. The intelligent agent analysis system for patent infringement analysis of molecular structures according to claim 8, characterized in that, The fact-checking module is specifically used to perform fact-checking on the subtask output results of the molecular analysis module, the patent analysis agent, or the structure matching agent specified by the verification instruction of the task scheduling module, and to update the corresponding task cache based on the verification results: The system listens for and receives verification instructions sent by the task scheduling module; upon receiving a first verification instruction, it performs fact-checking on whether the molecular structure output by the molecular analysis module is the same molecule as the original queried molecular data and updates the corresponding task cache based on the verification result; upon receiving a second verification instruction, it verifies whether the molecular entity output by the patent analysis agent matches the original claim and performs chemical rationality verification on the output molecular entity and updates the corresponding task cache based on the verification result; upon receiving a third verification instruction, it verifies each report record of the structure matching report output by the structure matching agent and updates the corresponding task cache based on the verification result.
10. The intelligent agent analysis system for patent infringement analysis of molecular structures according to claim 9, characterized in that, The fact-checking module is specifically used to perform fact-checking on whether the molecular structure output by the molecular analysis module is the same molecule as the original queried molecular data, and to update the corresponding task cache based on the fact-checking result: Use the first task cache area corresponding to the first task identifier in the current first verification instruction as the current task cache area; The queried molecule data and the first molecule structure in the current task cache are used as the corresponding current queried molecule data and current molecule structure. And identify the data format of the currently queried molecular data; If the current queried molecular data is a SMILES sequence, then the RDKit tool is used to convert the current SMILES sequence into a molecular object to obtain the corresponding first molecular object; if the current queried molecular data is a molecular file, then the RDKit tool is used to convert the current molecular file into a molecular object to obtain the corresponding first molecular object; and the RDKit tool is used to convert the current molecular structure into a molecular object to obtain the corresponding second molecular object. The RDKit tool is used to confirm whether the first and second molecular objects are the same molecule. If they are confirmed to be the same molecule, the corresponding first verification report content is set to "Molecular parsing task verification passed" and the corresponding first verification status is set to "normal". If it is confirmed that they are not the same molecule, the corresponding first verification report content is set to "Molecular parsing task verification failed" and the corresponding first verification status is set to "abnormal"; the first verification report is stored in the current task cache area; and the first verification feedback carrying the first verification status is sent back to the task scheduling module.
11. The intelligent agent analysis system for patent infringement analysis of molecular structures according to claim 9, characterized in that, The fact-checking module is specifically used to check whether the molecular entity output by the patent analysis agent matches the original claim, to verify the chemical rationality of the output molecular entity, and to update the corresponding task cache based on the verification results: Use the first task cache area corresponding to the first task identifier in the current second verification instruction as the current task cache area; And extract the corresponding first claim text and the first molecular entity set from the first patent analysis report in the current task cache; The first skeleton name or the first substituent name of the first molecular entity set are taken as the corresponding current name text; the first skeleton text position or the first substituent text position corresponding to the current name text are taken as the corresponding current text position; the subtext corresponding to the current text position in the original text of the first claim is extracted as the corresponding current comparison text; and the current comparison text is identified as matching the current name text; if they match, the corresponding name comparison result is set to successful; if they do not match, the corresponding name comparison result is set to failed; and the current name text, the current text position, and the text comparison result are used to form the corresponding name comparison record; and all the obtained name comparison records are used to form the corresponding name comparison report. The first substituent labels of the first molecular entity set are used as the corresponding current label text; the position of the first label text corresponding to the current label text is used as the corresponding current label position; the subtext corresponding to the current label position in the original text of the first claim is extracted as the corresponding current alignment text; and it is identified whether the current alignment text and the current label text refer to the same docking site; if yes, the corresponding label alignment result is set to successful; if no, the corresponding label alignment result is set to failed; and the current label text, the current label position, and the label alignment result form the corresponding label alignment record; and all the obtained label alignment records form the corresponding label alignment report. Each of the first molecular entities in the first set of molecular entities is taken as the corresponding current molecular entity; the RDKit tool is used to convert the current molecular entity into a molecular object to obtain the corresponding current molecular object; the RDKit tool is used to verify the chemical rationality of the current molecular object to obtain the corresponding first rationality verification result; the current molecular entity and its corresponding first rationality verification result constitute the corresponding chemical rationality verification record; and all the obtained chemical rationality verification records constitute the corresponding chemical rationality verification report; wherein, the first rationality verification result includes success and failure; The second verification report, composed of the name comparison report, the label comparison report, and the chemical rationality verification report, is stored in the current task cache. The system then identifies whether all the obtained name comparison results, label comparison results, and first rationality verification results are successful. If so, the corresponding second verification status is set to normal; otherwise, the corresponding second verification status is set to abnormal. Finally, the second verification feedback carrying the second verification status is sent back to the task scheduling module.
12. The intelligent agent analysis system for patent infringement analysis of molecular structures according to claim 9, characterized in that, The fact-checking module is specifically used when the report records of the structure matching report output by the structure matching agent are checked one by one and the corresponding task cache is updated based on the check results: The first task cache area corresponding to the first task identifier in the current third verification instruction is used as the current task cache area; And the first structure matching report in the current task cache is used as the current structure matching report; It also identifies whether the report content of the current structure matching report is a structure without matching. If so, then set the content of the corresponding third verification report to a no-verification structure; If not, then each of the matching structure records in the current structure matching report is taken as the current record; and the corresponding first and second molecular entities are extracted from the current record; and the skeleton names and skeleton structures of the first and second skeleton entities of the current first and second molecular entities are identified as being the same. If they are, the corresponding skeleton alignment result is set to successful; otherwise, the corresponding skeleton alignment result is set to failed; and the RDKit tool is used to convert the current second molecular entity into a molecular object to obtain the corresponding current molecular object; and the RDKit tool is used to verify the chemical rationality of the current molecular object to obtain the corresponding second rationality verification result. The first and second molecular entities, along with the corresponding skeleton alignment results and the second rationality verification results, form a corresponding matching structure verification record; and all the obtained matching structure verification records form a corresponding third verification report; wherein, the second rationality verification result includes success and failure; The system identifies whether the obtained third verification report is a structure without verification. If so, the corresponding third verification status is set to normal. If not, the system identifies whether all skeleton comparison results and all second rationality verification results corresponding to the current third verification report are successful. If so, the corresponding third verification status is set to normal; otherwise, the corresponding third verification status is set to abnormal. The system then stores the third verification report in the current task cache and sends the third verification feedback carrying the third verification status back to the task scheduling module.
13. The intelligent agent analysis system for patent infringement analysis of molecular structures according to claim 2, characterized in that, The structure matching agent is specifically used when the structure matching model is fine-tuned once based on the updated database content and the substituent database to generate a corresponding model training set: A corresponding molecular update set is formed by all the molecular structure samples updated in the Markush structure library at this time; and a corresponding first dataset is constructed by using the molecular update set and the substituent database to build a model training set. The structure matching model is then copied to generate a corresponding copy model; and the copy model is fine-tuned and trained using the first dataset in a supervised model training manner. And at the end of this fine-tuning training, the structure matching model is updated based on the model parameters of the replica model; The first dataset includes multiple first data records; each first data record includes a training molecular structure, a training backbone structure, and a labeled molecular entity; the data structures of the training molecular structure, the training backbone structure, and the labeled molecular entity are consistent with the query molecular structure, the target backbone structure, and the second molecular entity corresponding to the substituent recognition model.