IP Library Granted Patent US 12,579,382
Granted Patent B2
US 12,579,382 · App. 19/080,452 · Granted Mar 17, 2026

Natural language generation using knowledge graph incorporating textual summaries

Inventor: Waseem AlShikh (Boca Raton, FL)
Assignee: Writer, Inc.
G06F40/30
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,579,382
App. No.
19/080,452
Granted
Mar 17, 2026
Kind
B2
Abstract

A natural-language textual sequence representing a question is received from a user. From a knowledge graph domain data is retrieved that includes: a first textual passage based on a first ranking with respect to the natural-language textual sequence, a first textual summary associated with the first textual passage, a second textual passage based on a first ranking with respect to a comparison of the second textual passage and the natural-language textual sequence, a second textual summary associated with the second textual passage, and a third textual summary based on a second ranking with respect to the natural-language textual sequence. An answer to the question from a language model is obtained by providing input to the language model based on the natural-language textual sequence, the first textual passage, the first textual summary, the second textual passage, the second textual summary, and the third textual summary.

Claims (64)

1 . A computer-implemented method for producing an answer to a question relating to a domain, the method comprising:

receiving a corpus of textual information;

obtaining textual passages, descriptions of associations between the textual passages, and textual summaries corresponding to the textual passages from a language model by providing at least a portion of the corpus of textual information to the language model, the corpus of textual information includes a plurality of input documents;

generating a knowledge graph based on the textual passages, the descriptions of associations between the textual passages, and the textual summaries;

receiving a natural-language textual sequence representing the question from a user;

retrieving, from the knowledge graph associated with the domain:

a first textual passage based on a first ranking with respect to the natural-language textual sequence,

a first textual summary associated with the first textual passage,

a second textual passage based on the first ranking with respect to a comparison of the second textual passage and the natural-language textual sequence,

a second textual summary associated with the second textual passage, and

a third textual summary based on a second ranking with respect to the natural-language textual sequence, wherein:

multiple levels of textual summaries including the first textual summary and the second textual summary are generated to provide different degrees of compression of an input document to the language model, and

a higher level of textual summary corresponds to the second textual summary, and a lower level corresponds to the first textual summary, where the second textual summary corresponds to more text than the first textual summary;

obtaining the answer to the question from the language model by providing an input to the language model based on the natural-language textual sequence, the first textual passage, the first textual summary, the second textual passage, the second textual summary, and the third textual summary; and

providing an output to the user based on the answer.

2 . The method of claim 1 , wherein the language model is an encoder-decoder model that separately encodes at least the first textual passage, the second textual passage, and the third textual summary into respective intermediate outputs.

3 . The method of claim 2 , wherein the language model re-ranks the intermediate outputs and concatenates a subset of the intermediate outputs for processing by a decoder to obtain the answer.

4 . The method of claim 3 , wherein the subset of the intermediate outputs includes an encoding based on the natural-language textual sequence, the first textual passage, and the first textual summary.

5 . The method of claim 1 , wherein the language model encodes the first textual passage jointly with the first textual summary into an output that is concatenated with at least one other encoding for joint decoding.

6 . The method of claim 1 , wherein the first textual passage is from a first document, the first textual summary is a summary of a portion of the first document, retrieving, from the knowledge graph associated with the domain further includes retrieving a first document summary that is a summary of the first document, and obtaining the answer to the question from an encoder-decoder model by providing the input to the language model further based on the first document summary.

7 . The method of claim 1 , wherein the knowledge graph includes a tree corresponding to a first document, a root of the tree corresponding to a summary of the first document, nodes of the tree corresponding to textual summaries of portions of the first document, and leaves of the tree corresponding to textual passages of the first document, wherein the first textual summary corresponds to a node immediately above a leaf corresponding to the first textual passage.

8 . The method of claim 1 , wherein the knowledge graph does not utilize a pre-defined ontology and is stored in a relational database using a JavaScript Object Notation format.

9 . A computer-program product tangibly embodied in a non-transitory machine-readable storage medium, including instructions configured to cause one or more data processors to perform a set of actions for producing an answer to a question relating to a domain, the set of actions including:

receiving a corpus of textual information;

obtaining textual passages, descriptions of associations between the textual passages, and textual summaries corresponding to the textual passages from a language model by providing at least a portion of the corpus of textual information to the language model, the corpus of textual information includes a plurality of input documents;

generating a knowledge graph based on the textual passages, the descriptions of associations between the textual passages, and the textual summaries;

receiving a natural-language textual sequence representing the question from a user;

retrieving, from the knowledge graph associated with the domain:

a first textual passage based on a first ranking with respect to the natural-language textual sequence,

a first textual summary associated with the first textual passage,

a second textual passage based on the first ranking with respect to a comparison of the second textual passage and the natural-language textual sequence,

a second textual summary associated with the second textual passage, and

a third textual summary based on a second ranking with respect to the natural-language textual sequence, wherein:

multiple levels of textual summaries including the first textual summary and the second textual summary are generated to provide different degrees of compression of an input document to the language model, and

a higher level of textual summary corresponds to the second textual summary, and a lower level corresponds to the first textual summary, where the second textual summary corresponds to more text than the first textual summary;

obtaining the answer to the question from the language model by providing an input to the language model based on the natural-language textual sequence, the first textual passage, the first textual summary, the second textual passage, the second textual summary, and the third textual summary; and

providing an output to the user based on the answer.

10 . The computer-program product of claim 9 , wherein the language model is an encoder-decoder model that separately encodes at least the first textual passage, the second textual passage, and the third textual summary into respective intermediate outputs.

11 . The computer-program product of claim 10 , wherein the language model re-ranks the intermediate outputs and concatenates a subset of the intermediate outputs for processing by a decoder to obtain the answer.

12 . The computer-program product of claim 11 , wherein the subset of the intermediate outputs includes an encoding based on the natural-language textual sequence, the first textual passage, and the first textual summary.

13 . The computer-program product of claim 9 , wherein the language model encodes the first textual passage jointly with the first textual summary into an output that is concatenated with at least one other encoding for joint decoding.

14 . The computer-program product of claim 9 , wherein the first textual passage is from a first document, the first textual summary is a summary of a portion of the first document, retrieving, from the knowledge graph associated with the domain further includes retrieving a first document summary that is a summary of the first document, and obtaining the answer to the question from an encoder-decoder model by providing the input to the language model further based on the first document summary.

15 . The computer-program product of claim 9 , wherein the knowledge graph includes a tree corresponding to a first document, a root of the tree corresponding to a summary of the first document, nodes of the tree corresponding to textual summaries of portions of the first document, and leaves of the tree corresponding to textual passages of the first document, wherein the first textual summary corresponds to a node immediately above a leaf corresponding to the first textual passage.

16 . The computer-program product of claim 9 , wherein the knowledge graph does not utilize a pre-defined ontology and is stored in a relational database using a JavaScript Object Notation format.

17 . A system comprising:

one or more processors;

one or more non-transitory computer-readable media storing instructions, which, when executed by the system, cause the system to perform a set of actions for producing an answer to a question relating to a domain, the set of actions including:

receiving a corpus of textual information;

obtaining textual passages, descriptions of associations between the textual passages, and textual summaries corresponding to the textual passages from a language model by providing at least a portion of the corpus of textual information to the language model, the corpus of textual information includes a plurality of input documents;

generating a knowledge graph based on the textual passages, the descriptions of associations between the textual passages, and the textual summaries;

receiving a natural-language textual sequence representing the question from a user;

retrieving, from the knowledge graph associated with the domain:

a first textual passage based on a first ranking with respect to the natural-language textual sequence,

a first textual summary associated with the first textual passage,

a second textual passage based on the first ranking with respect to a comparison of the second textual passage and the natural-language textual sequence,

a second textual summary associated with the second textual passage, and

a third textual summary based on a second ranking with respect to the natural-language textual sequence, wherein:

multiple levels of textual summaries including the first textual summary and the second textual summary are generated to provide different degrees of compression of an input document to the language model, and

a higher level of textual summary corresponds to the second textual summary, and a lower level corresponds to the first textual summary, where the second textual summary corresponds to more text than the first textual summary;

obtaining the answer to the question from the language model by providing an input to the language model based on the natural-language textual sequence, the first textual passage, the first textual summary, the second textual passage, the second textual summary, and the third textual summary; and

providing an output to the user based on the answer.

18 . The system of claim 17 , wherein the language model is an encoder-decoder model that separately encodes at least the first textual passage, the second textual passage, and the third textual summary into respective intermediate outputs.

19 . The system of claim 18 , wherein the language model re-ranks the intermediate outputs and concatenates a subset of the intermediate outputs for processing by a decoder to obtain the answer.

20 . The system of claim 19 , wherein the subset of the intermediate outputs includes an encoding based on the natural-language textual sequence, the first textual passage, and the first textual summary.

Assignments (2)
SECURITY INTEREST Recorded May 21, 2026
From: WRITER, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 074728/0276 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 20, 2025
From: ALSHIKH, WASEEM
To: WRITER, INC.
Reel/Frame 070578/0384 →
Continuity (2)
Provisional Application 63654558 · May 31, 2024
Related Publication 20250371274A1 · Dec 4, 2025
References Cited (42)
US 5857198A · Schmidt · 1999 [cited by examiner]
US 9940367B1 · Baker · 2018 [cited by examiner]
US 10019513B1 · Koren · 2018 [cited by examiner]
US 10180964B1 · Baker · 2019 [cited by examiner]
US 10572516B2 · Walia et al. · 2020 [cited by applicant]
US 10678821B2 · Carmeli · 2020 [cited by examiner]
US 10817576B1 · Davidovich · 2020 [cited by examiner]
US 10909157B2 · Paulus et al. · 2021 [cited by applicant]
US 12259914B1 · Gao · 2025 [cited by examiner]
US 20070179944A1 · Van Dyke Parunak · 2007 [cited by examiner]
US 20160267117A1 · Guggilla · 2016 [cited by examiner]
US 20180307776A1 · Ferradini et al. · 2018 [cited by applicant]
US 20180336183A1 · Lee et al. · 2018 [cited by applicant]
US 20190005024A1 · Somech et al. · 2019 [cited by applicant]
US 20190206517A1 · Devarakonda · 2019 [cited by examiner]
US 20200074322A1 · Chungapalli · 2020 [cited by examiner]
US 20210191937A1 · Jia · 2021 [cited by examiner]
US 20210192126A1 · Gehrmann et al. · 2021 [cited by applicant]
US 20210295822A1 · Tomkins · 2021 [cited by examiner]
US 20220277135A1 · Kryscinski · 2022 [cited by examiner]
US 20230267275A1 · Au · 2023 [cited by examiner]
US 20230420146A1 · Jegannathan · 2023 [cited by examiner]
US 20240095460A1 · Xu et al. · 2024 [cited by applicant]
US 20240168984A1 · Kim et al. · 2024 [cited by applicant]
US 20250061291A1 · Gardner et al. · 2025 [cited by applicant]
US 20250272276A1 · Ban et al. · 2025 [cited by applicant]
US 20250272508A1 · Russell · 2025 [cited by applicant]
US 20250308120A1 · Dai et al. · 2025 [cited by applicant]
KR 20200087977A · 2020 [cited by applicant]
KR 102775064B1 · 2025 [cited by applicant]
WO 2019226474A1 · 2019 [cited by applicant]
Non-Final Office Action for U.S. Appl. No. 19/080,459, dated May 8, 2025. [cited by applicant]
Non-Final Office Action for U.S. Appl. No. 19/080,464, dated May 28, 2025. [cited by applicant]
Non-Final Office Action for U.S. Appl. No. 19/080,465, dated May 23, 2025. [cited by applicant]
Non-Final Office Action for U.S. Appl. No. 19/080,472, dated May 16, 2025. [cited by applicant]
Zhu, Tianyu, et al. “Summarizing long-form document with rich discourse information.” Proceedings of the 30th ACM international conference on information & knowledge management. 2021. (Year: 2021). [cited by applicant]
Final Office Action for U.S. Appl. No. 19/080,472 notified Sep. 5, 2025. [cited by applicant]
Final Office Action notified Oct. 10, 2025 for U.S. Appl. No. 19/080,465. [cited by applicant]
Non-Final Office Action for U.S. Appl. No. 19/080,459 notified Sep. 11, 2025. [cited by applicant]
Final Office Action for U.S. Appl. No. 19/080,464 notified Nov. 18, 2025. [cited by applicant]
Notice of Allowance for U.S. Appl. No. 19/080,459 notified Jan. 30, 2026. [cited by applicant]
Notice of Allowance for U.S. Appl. No. 19/080,472 notified Jan. 13, 2026. [cited by applicant]