IP Library Granted Patent US 12,411,896
Granted Patent B1
US 12,411,896 · App. 18/423,235 · Granted Sep 9, 2025

Document graph

Inventor: Daniel Selman (Winchester, GB)
Assignee: Docusign, Inc.
G06F16/93G06F16/90335
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,411,896
App. No.
18/423,235
Granted
Sep 9, 2025
Kind
B1
Abstract

A method, an apparatus, and a computer-readable storage medium for generating a document graph. A plurality of electronic documents is received. Each electronic document has a predetermined document type. A machine learning model is selected from the plurality of machine learning models based on the predetermined document type. The selected machine learning model is instructed to extract a plurality of document portions from each electronic document in the plurality of electronic documents in accordance with the predetermined document type. A relationship between two or more document portions is defined based on the content of each document portion, and the document portions are associated based on the relationship. A graph structure having a plurality of nodes is generated. Each node includes at least one document portion. Each node is connected to another node in accordance with the relationship between document portions included in the nodes. The graph structure is stored.

Claims (55)

1. A computer-implemented method, comprising:

receiving, using at least one processor, a plurality of electronic documents, each electronic document in the plurality of electronic documents has a predetermined document type;

selecting, using the at least one processor, based on the predetermined document type, a machine learning model from a plurality of machine learning models;

instructing, using the at least one processor, the selected machine learning model to extract a plurality of document portions from each electronic document in the plurality of electronic documents in accordance with the predetermined document type of each electronic document;

defining, using the at least one processor, a relationship between two or more document portions in the plurality of document portions based on a content of each document portion in the two or more document portions, and associating the two or more document portions based on the relationship; and

generating, using the at least one processor, a graph structure having a plurality of nodes, each node in the plurality of nodes including at least one document portion in the plurality of document portions, wherein each node in the plurality of nodes is connected to another node in the plurality of nodes in accordance with the relationship between document portions included in the nodes, and storing the graph structure in at least one storage location.

2. The method of claim 1 , wherein the defining includes semantically searching, using at least one machine learning model in the plurality of machine learning models, the plurality of document portions extracted from the plurality of electronic documents to determine the content of each document portion.

3. The method of claim 1 , wherein the instructing includes

generating, using the content of each document portion, a label for each document portion in the plurality of document portions; and

assigning each generated label to a node in the graph structure including corresponding document portion.

4. The method of claim 1 , wherein the graph structure is generated for the plurality of electronic documents irrespective of a format of each electronic document in the plurality of electronic documents.

5. The method of claim 1 , wherein the at least one document portion included in each node in the plurality of nodes is represented by at least one vector embedding in a plurality of vector embeddings, the at least one vector embedding is generated based on the at least one document portion using at least one machine learning model in the plurality of machine learning models.

6. The method of claim 5 , further comprising

receiving a query to retrieve information from the plurality of electronic documents;

generating, based on the received query, one or more search vectors;

searching the plurality of vector embeddings in the graph structure using the one or more search vectors; and

generating, based on the searching, a response to the query.

7. The method of claim 6 , wherein the query is a natural language representation query.

8. The method of claim 6 , wherein the generating includes

identifying one or more vector embeddings in the plurality of vector embeddings to be semantically similar to the one or more search vectors; and

retrieving one or more document portions corresponding to the identified one or more vector embeddings and including the retrieved one or more document portions in the response.

9. The method of claim 8 , wherein the generating includes

identifying one or more another vector embeddings connected to the one or more vector embeddings using the defined relationship; and

retrieving one or more another document portions corresponding to the identified one or more another vector embeddings and including the retrieved one or more document portions and the retrieved one or more another document portions in the response.

10. The method of claim 6 , wherein the search vector includes at least one of: a word level vector, a sentence level vector, a paragraph level vector, and any combination thereof.

11. The method of claim 1 , wherein the predetermined document type includes at least one of the following: a legal document type, a non-legal document type, and any combinations thereof.

12. The method of claim 1 , wherein the plurality of document portions includes at least one of the following: a text, an audio, a video, an image, a table, and any combination thereof.

13. The method of claim 1 , wherein the plurality of machine learning models includes at least one of the following: a large language model, at least one generative artificial intelligence model, and any combination thereof.

14. A system, comprising:

at least one processor; and

at least one non-transitory storage media storing instructions, that when executed by the at least one processor, cause the at least one processor to:

extract, using a machine learning model, a plurality of document portions from each electronic document in a plurality of electronic documents in accordance with a predetermined document type of each electronic document;

determine, using the machine learning model, a relationship between two or more document portions in the plurality of document portions based on a content of each document portion in the two or more document portions, and associate the two or more document portions based on the relationship; and

generate, using the machine learning model, a graph structure having a plurality of nodes, each node in the plurality of nodes includes at least one vector in a plurality of vector embeddings representing at least one document portion in the plurality of document portions, wherein each node in the plurality of nodes is connected to another node in the plurality of nodes in accordance with the relationship between document portions included in the nodes, and store the graph structure in at least one storage location.

15. The system of claim 14 , wherein the machine learning model is selected from a plurality of machine learning models based on the predetermined document type, wherein the plurality of machine learning models includes at least one of the following: a large language model, at least one generative artificial intelligence model, and any combination thereof.

16. The system of claim 14 , wherein the at least one processor is configured to semantically search, using the machine learning model, the plurality of document portions extracted from the plurality of electronic documents to determine the content of each document portion.

17. The system of claim 14 , wherein the at least one processor is configured to

generate, using the content of each document portion, a label for each document portion in the plurality of document portions; and

assign each generated label to a node in the graph structure including corresponding document portion.

18. The system of claim 14 , wherein the graph structure is generated for the plurality of electronic documents irrespective of a format of each electronic document in the plurality of electronic documents.

19. The system of claim 14 , wherein the at least one processor is configured to

receive a query to retrieve information from the plurality of electronic documents;

generate, based on the received query, one or more search vectors, wherein generation of the one or more search vectors includes

identifying one or more vector embeddings in the plurality of vector embeddings to be semantically similar to the one or more search vectors; and

identifying one or more another vector embeddings connected to the one or more vector embeddings using the defined relationship; and

retrieving one or more another document portions corresponding to the identified one or more another vector embeddings and including the retrieved one or more document portions and the retrieved one or more another document portions in the response;

search the plurality of vector embeddings in the graph structure using the one or more search vectors; and

generate, based on the searching, a response to the query.

20. A non-transitory computer-readable storage medium, the computer-readable storage medium including instructions that when executed by at least one processor, cause the at least one processor to:

determine, using a machine learning model, a relationship between two or more document portions in the plurality of document portions based on a content of each document portion in the two or more document portions, and associate the two or more document portions based on the relationship;

generate a graph structure having a plurality of nodes, each node in the plurality of nodes includes at least one vector embedding in a plurality of vector embeddings representing at least one document portion in the plurality of document portions, wherein each node in the plurality of nodes is connected to another node in the plurality of nodes in accordance with the relationship between document portions included in the nodes;

receive a query to retrieve information from the plurality of electronic documents;

generate, based on the received query, one or more search vectors;

search the plurality of vector embeddings in the graph structure using the one or more search vectors; and

generate, based on the searching, a response to the query, and represent the response to the query on a graphical user interface of at least one computing device.

Assignments (2)
PATENT SECURITY AGREEMENT Recorded May 23, 2025
From: DOCUSIGN, INC.
To: BANK OF AMERICA, N.A.
Reel/Frame 071337/0240 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 29, 2024
From: SELMAN, DANIEL
To: DOCUSIGN, INC.
Reel/Frame 066275/0737 →
References Cited (1)
US 20230079343A1 · Roy · 2023 [cited by examiner]
Cited By (3)
US 12,481,666 US 12,518,084 US 12,632,491