DETAILED ACTION
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Allowable Subject Matter
Claim 13 is objected to as being dependent upon a rejected base claim, but would be allowable if rewritten in independent form including all of the limitations of the base claim and any intervening claims.
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
[0087] of the Specification states that a machine-storage medium is non-transitory, thus making claim 20 35 USC § 101 eligible.
Claim Rejections - 35 USC § 103
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claim(s) 1-11, 14-20 are rejected under 35 U.S.C. 103 as being unpatentable over Gao (NPL “Retrieval-Augmented Generation for Large Language Models: A Survey”) in view of Karlberg (US 2024/0419835).
With respect to claim 14 (similarly claims 1 and 20), Gao teaches a system (e.g. the process of Fig 2, see section II pp3) comprising:
one or more processors (e.g. inherently the process comprising one or more processors); and
a memory storing instructions that, when executed by the one or more processors, cause the one or more processors to perform operations comprising (e.g. inherently the process of Fig 2 as part of a research comprises a memory storing instructions that, when executed by the one or more processors, cause the one or more processors to perform operations):
generating, using Graph Retrieval Augmented Generation (RAG), a knowledge graph based on data from one or more data sources (e.g. generating, using RAG, a knowledge graph based on data from documents, see chunks 1-3 Fig 2 pp3 and section III B Indexing optimization pp8);
receiving, from a client device, a query that requires context from the knowledge graph (e.g. receiving, from a user/device, a query that requires context from the knowledge graph, see Fig 2 pp3 where chunks 1-3 are subsequently used as the expanded context in prompt);
obtaining the context from the knowledge graph (e.g. obtaining the context from chunks 1-3, see Fig 2 pp3);
generating a prompt that includes the context and the query (e.g. generating a prompt that includes the context and the query, see Fig 2);
triggering, with the prompt, a large language model (LLM) to provide a response to the query (e.g. the generation portion of Fig 2 triggers, with the prompt, a LLM to provide a response to the query i.e. the answer of Fig 2); and
causing output to the user/device, see Fig 2
However, Gao fails to teach causing display of the response on the client device.
Karlberg teaches causing display of the response on the client device (e.g. causing presentation of result, see Fig 4 S414 [0065]).
Gao and Karlberg are analogous art because they all pertain to outputting/presenting result of a query to a user. Therefore, it would have been obvious to people having ordinary skill in the art before the effective filing date of the claimed invention to modify Gao with the teachings of Karlberg to include: causing display of the response on the client device, as disclosed by Karlberg in Fig 4 S414 [0065]. The benefit of the modification would be to make the user notice the response/answer to ensure user satisfaction.
With respect to claim 15 (similarly claim 3 and 4), Gao teaches the system of claim 14, wherein generating the knowledge graph comprises:
segmenting the data from the one or more data sources into text chunks (indexing the documents into chunks 1-3, Fig 2 pp3); and
extracting elements from the text chunks, the elements comprising entities, relationships, and claims (e.g. extracting metadata from the chunks, the metadata comprising entities, relationships, and claims as suggested in B Indexing optimization pp8).
With respect to claim 16 (similarly claim 6), Gao teaches the system of claim 15, wherein generating the knowledge graph further comprises generating element summaries for the extracted elements (e.g. recursive retrieval comprises summarizing sections of a document or lengthy PDF before performing a retrieval based on this summary, see B recursive retrieval pp11).
With respect to claim 17 (similarly claim 7), Gao teaches the system of claim 14, wherein the operations further comprise: generating a plurality of communities within the knowledge graph, each community comprising a cluster of closely-related entity nodes having strong internal connections (e.g. knowledge graph index pp8 is generating a plurality of communities within the knowledge graph, each community comprising a cluster of closely-related entity nodes having strong internal connections, see also Karlberg Fig 1 [0012]).
With respect to claim 18 (similarly claim 8), Gao teaches the system of claim 17, wherein the operations further comprise: performing hierarchical partition to generate a multi-level hierarchy of communities, whereby closely related communities are clustered into a higher-level community (e.g. knowledge graph index pp8 and reranking pp10 are performing hierarchical partition to generate a multi-level hierarchy of communities, whereby closely related communities are clustered into a higher-level community).
With respect to claim 19 (similarly claim 9), Gao teaches the system of claim 14, wherein the operations further comprise: periodically updating the knowledge graph with new data from the one or more data sources (e.g. LLM fine-tuning pp10 is periodically updating the knowledge graph with new data from the one or more data sources).
With respect to claim 2, Gao in view of Karlberg teaches the method of claim 1, wherein: the knowledge graph is customized for a team and the data is maintained by the team (Karlberg e.g. the knowledge graph of Fig 1 is customized for a team and the data is maintained by the team, as suggested in [0012]);
generating the knowledge graph comprises collecting the data from the one or more data sources (Karlberg e.g. Fig 1 [0012]), the one or more data sources comprising two or more of a code repository storing code generated by the team, a document repository storing documents regarding projects of the team, or a resource/task management system providing tracking and reports on the projects (Karlberg e.g. see the data stores 314 Fig 3 [0037]-[0038]); and the context is based on the data from the two or more code repositories (Karlberg e.g. the context is based on the data stores, [0037]-[0038]).
With respect to claim 5, Gao teaches the method of claim 4, wherein generating the knowledge graph further comprises training an extraction component to generate a domain-specific prompt to extract the elements (e.g. When LLMs lack data in a specific domain, additional knowledge can be provided to the LLM through fine-tuning, LLM fine-tuning pp10).
With respect to claim 10, Gao teaches the method of claim 1, wherein: generating the knowledge graph comprises generating a knowledge graph for each data source of the one or more data sources (e.g. generating knowledge graph for each document, Fig 2, see also knowledge graph index pp8); and the knowledge graphs for two data sources are hot swapped during context retrieval (e.g. When LLMs lack data in a specific domain, additional knowledge can be provided to the LLM through fine-tuning, LLM fine-tuning pp10 suggest the knowledge graphs for two data sources are hot swapped during context retrieval i.e. adding data while the system is running).
With respect to claim 11, Gao teaches the method of claim 1, wherein obtaining the context comprises: generating query-focused summarization answers and assigning a helpfulness score to each query-focused summarization answer (e.g. the answer with RAG Fig 2 suggest generating query-focused summarization answers and assigning a helpfulness score to each query-focused summarization answer); and selecting and merging highest scoring query-focused summarization answers into a final query-focused summarization answer that is the context (e.g. the answer with RAG Fig 2 suggest selecting and merging highest scoring query-focused summarization answers into a final query-focused summarization answer that is the context).
Claim(s) 12 is rejected under 35 U.S.C. 103 as being unpatentable over Gao (NPL “Retrieval-Augmented Generation for Large Language Models: A Survey”) in view of Karlberg (US 2024/0419835) and further in view of MacDougall (US 2020/0356604).
With respect to claim 12, Gao teaches the method of claim 1 including obtaining the context from the chunks 1-3 and performing top-level and lower-level search of knowledge graph.
However, Gao fails to teach wherein obtaining the context comprises: causing presentation of a user interface requesting a user at the client device to indicate whether the response should be detailed or abstract; and based on an indication of abstract, performing a top-level community search or based on an indication of detailed, performing a lower-level community search.
MacDougall teaches a visual interface having a plurality of synchronized components to show abstract and detailed views of the output, see claim 11.
Gao and MacDougall are analogous art because they all pertain to presenting an output to a user. Therefore it would have been obvious to people having ordinary skill in the art before the effective filing date of the claimed invention to modify Gao with the visual interface having a plurality of synchronized components to show abstract and detailed views of the output of MacDougall to include: wherein obtaining the context comprises: causing presentation of a user interface requesting a user at the client device to indicate whether the response should be detailed or abstract; and based on an indication of abstract, performing a top-level community search or based on an indication of detailed, performing a lower-level community search.
The benefit of the modification would be to allow the user to perform the community search based on the abstract and/or detailed view of the output.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to IBRAHIM SIDDO whose telephone number is (571)272-4508. The examiner can normally be reached 9:00-5:30PM.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Akwasi Sarpong can be reached at 5712703438. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/IBRAHIM SIDDO/Primary Examiner, Art Unit 2681