IP Library Granted Patent US 12,614,080
Granted Patent B2
US 12,614,080 · App. 18/398,058 · Granted Apr 28, 2026

Using sample question embeddings to choose between an LLM interfacing model and a non-LLM interfacing model

Inventors: Denis Grenader (Dover, NH); Benjamin John Kus (Alameda, CA)
Assignee: Box, Inc.
G06N5/01G06F16/22G06F16/24522G06F16/24573G06F40/40G06N3/0455G06N3/08
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,614,080
App. No.
18/398,058
Filed
Dec 27, 2023
Granted
Apr 28, 2026
Kind
B2
Art Unit
2171
USPC
704/9
Abstract

Methods, systems, and computer program products for managing interactions between a content management system (CMS) and a large language model (LLM) system. The semantics of user questions can be considered before prompting an LLM, or alternatively, before querying datasets that are local to the CMS. Given a user question to be answered, the embedding of the user question can be matched against preconfigured sample question embeddings to determine a best match. A prompt corresponding to the determined best match is then configured based on identification of the class or classes that correspond to the matched question. Prompts for provision to LLMs can be synthesized based on a particular user's identity and/or based on the particular user's historical collaboration activities over objects of the CMS. The LLM can be hosted by a third-party provider. Alternatively all or portions of a large language model system can be hosted within the CMS.

Claims (40)

1 . A method for choosing between a large language model agent (LLM agent) or a non-LLM agent, the method comprising:

configuring a content management system (CMS) to expose content objects stored in a shared content repository to a plurality of content management system users;

receiving a user question from a content management system user of the plurality of content management system users;

responsive to receipt of the user question, selecting at least one computing agent from a plurality of candidate computing agents, wherein the plurality of candidate computing agents comprise at least a LLM agent and a non-LLM agent, and the at least one computing agent is selected at least based on results of processing the user question to compare the user question to data stored in a database that represents example questions and is separate from the shared content repository; and

processing the user question by:

when the LLM agent is selected, forming an answer to the user question at least by formulating an LLM prompt using the LLM agent, and sending the LLM prompt to an LLM system, and

when the non-LLM agent is selected, deriving an answer to the user question based on at least characteristics of CMS data associated with at least a subset of the content objects stored in the shared content repository.

2 . The method of claim 1 , further comprising determining a domain-specific query language.

3 . The method of claim 2 , further comprising executing a domain-specific query to produce local query results, the domain-specific query based at least in part on the domain-specific query language.

4 . The method of claim 3 , further comprising reformatting the local query results to render the local query results into natural language.

5 . The method of claim 3 , further comprising identifying a preconfigured template.

6 . The method of claim 5 , wherein the identifying of the preconfigured template comprises comparing at least one best match value against a minimum match threshold.

7 . The method of claim 6 , wherein, when the minimum match threshold is not met, then a generic prompt is used.

8 . The method of claim 1 , wherein the deriving an answer to the user question is performed without formulating an LLM prompt.

9 . A non-transitory computer readable medium having stored thereon a sequence of instructions which, when stored in memory and executed by one or more processors causes the one or more processors to perform a set of acts for choosing between a large language model agent (LLM agent) or a non-LLM agent, the set of acts comprising:

configuring a content management system (CMS) to expose content objects stored in a shared content repository to a plurality of content management system users;

receiving a user question from a content management system user of the plurality of content management system users;

responsive to receipt of the user question, selecting at least one computing agent from a plurality of candidate computing agents, wherein the plurality of candidate computing agents comprise at least a LLM agent and a non-LLM agent, and the at least one computing agent is selected at least based on results of processing the user question to compare the user question to data stored in a database that represents example questions and is separate from the shared content repository; and

processing the user question by:

when the LLM agent is selected, forming an answer to the user question at least by formulating an LLM prompt using the LLM agent, and sending the LLM prompt to an LLM system, and

when the non-LLM agent is selected, deriving an answer to the user question based on at least characteristics of CMS data associated with at least a subset of the content objects stored in the shared content repository.

10 . The non-transitory computer readable medium of claim 9 , further comprising instructions which, when stored in memory and executed by the one or more processors causes the one or more processors to perform acts of determining a domain-specific query language.

11 . The non-transitory computer readable medium of claim 10 , further comprising instructions which, when stored in memory and executed by the one or more processors causes the one or more processors to perform acts of executing a domain-specific query to produce local query results, the domain-specific query based at least in part on the domain-specific query language.

12 . The non-transitory computer readable medium of claim 11 , further comprising instructions which, when stored in memory and executed by the one or more processors causes the one or more processors to perform acts of reformatting the local query results to render the local query results into natural language.

13 . The non-transitory computer readable medium of claim 11 , further comprising instructions which, when stored in memory and executed by the one or more processors causes the one or more processors to perform acts of identifying a preconfigured template.

14 . The non-transitory computer readable medium of claim 13 , wherein the identifying of the preconfigured template comprises comparing at least one best match value against a minimum match threshold.

15 . The non-transitory computer readable medium of claim 14 , wherein, when the minimum match threshold is not met, then a generic prompt is used.

16 . The non-transitory computer readable medium of claim 9 , wherein the deriving an answer to the user question is performed without formulating an LLM prompt.

17 . A system for choosing between a large language model agent (LLM agent) or a non-LLM agent, the system comprising:

a storage medium having stored thereon a sequence of instructions; and

one or more processors that execute the sequence of instructions to cause the one or more processors to perform a set of acts, the set of acts comprising,

configuring a content management system (CMS) to expose content objects stored in a shared content repository to a plurality of content management system users;

receiving a user question from a content management system user of the plurality of content management system users;

responsive to receipt of the user question, selecting at least one computing agent from a plurality of candidate computing agents, wherein the plurality of candidate computing agents comprise at least a LLM agent and a non-LLM agent, and the at least one computing agent is selected at least based on results of processing the user question to compare the user question to data stored in a database that represents example questions and is separate from the shared content repository; and

processing the user question by:

when the LLM agent is selected, forming an answer to the user question at least by formulating an LLM prompt using the LLM agent, and sending the LLM prompt to an LLM system, and

when the non-LLM agent is selected, deriving an answer to the user question based on at least characteristics of CMS data associated with at least a subset of the content objects stored in the shared content repository.

18 . The system of claim 17 , further comprising determining a domain-specific query language.

19 . The system of claim 18 , further comprising executing a domain-specific query to produce local query results, the domain-specific query based at least in part on the domain-specific query language.

20 . The system of claim 19 , further comprising reformatting the local query results to render the local query results into natural language.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 18, 2024
From: GRENADER, DENIS; KUS, BENJAMIN JOHN
To: BOX, INC.
Reel/Frame 066171/0471 →
Continuity (4)
Provisional Application 63543503 · Oct 10, 2023
Provisional Application 63527534 · Jul 18, 2023
Provisional Application 63463049 · Apr 30, 2023
Related Publication 20240362213A1 · Oct 31, 2024
References Cited (34)
US 7176791B2 · Sakaki et al. · 2007 [cited by applicant]
US 10296520B1 · Ganesh et al. · 2019 [cited by applicant]
US 12265570B2 · Siebel · 2025 [cited by examiner]
US 20100312726A1 · Thompson et al. · 2010 [cited by applicant]
US 20180081934A1 · Byron · 2018 [cited by examiner]
US 20180261211A1 · Dolan et al. · 2018 [cited by applicant]
US 20190050433A1 · Donneau-Golencer · 2019 [cited by examiner]
US 20190163785A1 · Ramachandra Iyer · 2019 [cited by examiner]
US 20190260749A1 · VerWeyst · 2019 [cited by examiner]
US 20210191962A1 · Qu et al. · 2021 [cited by applicant]
US 20220036153A1 · O'Malia et al. · 2022 [cited by applicant]
US 20220100465A1 · Aggarwal et al. · 2022 [cited by applicant]
US 20220121694A1 · Rosno et al. · 2022 [cited by applicant]
US 20220350844A1 · Reeve et al. · 2022 [cited by applicant]
US 20230103076A1 · Zhou · 2023 [cited by examiner]
US 20250077595A1 · Ahmed · 2025 [cited by examiner]
US 20250111092A1 · Mantin · 2025 [cited by examiner]
WO WO2022007823A1 · 2022 [cited by applicant]
Beutel, Alex, Leman Akoglu, and Christos Faloutsos. “Graph-based user behavior modeling: from prediction to fraud detection.” Proceedings of the 21th ACM SIGKDD international conference on knowledge discovery and data m… [cited by applicant]
Beutel, Alex. “User behavior modeling with large-scale graph analysis.” Computer Science Department, Carnegie Mellon University (2016). [cited by applicant]
Zhang, Wei, et al. “Network-based machine learning and graph theory algorithms for precision oncology.” NPJ precision oncology 1.1 (2017): 1-15. [cited by applicant]
Almeida, Aitor, and Gorka Azkune. “Predicting human behaviour with recurrent neural networks.” Applied Sciences 8.2 (2018): 305. [cited by applicant]
Schneible, Joe. “The Intersection of Large-Scale Graph Analytics and Deep Learning”, URL:https://devblogs.nvidia.com/intersection-large-scale-graph-analytics-deep-learning/, Sep. 26, 2016. [cited by applicant]
Pan, Shimei, and Tao Ding. “Automatically Infer Human Traits and Behavior from Social Media Data.” arXiv preprint arXiv:1804.04191 (2018). [cited by applicant]
Aasman, Jans. “Solidifying security analytics with artificial intelligence knowledge graphs”, URL:https://www.infoworld.com/article/3269728/solidifying-security-analytics-with-artificial-intelligence-knowledge-graphs.ht… [cited by applicant]
Schindler, Timo. “Anomaly detection in log data using graph databases and machine learning to defend advanced persistent threats.” arXiv preprint arXiv:1802.00259 (2018). [cited by applicant]
Wang, Gang, et al. “Clickstream user behavior models.” ACM Transactions on the Web (TWEB) 11.4 (2017): 1-37. [cited by applicant]
Augustyniak, Piotr, and Grażyna Ślusarczyk. “Graph-based representation of behavior in detection and prediction of daily living activities.” Computers in biology and medicine 95 (2018): 261-270. [cited by applicant]
James, Yi, “Build your AI Assistant for Stable Diffusion Prompts with Retrieval-Augmented Generation” URL: https://medium.com/@james_yi/improving-text-to-image-prompts-with-retrieval-augmented-generation-d9e543270474, S… [cited by applicant]
Naarla, Ravi, “Prompt Engineering—Chunking Strategies”, Linkedin, Aug. 30, 2023. [cited by applicant]
PCT International Search Report and Written Opinion for International Appln. No. PCT/US24/26906, Applicant Box, Inc, dated Oct. 16, 2024. [cited by applicant]
Roth, G., “Leveraging ChatGPT in Automation Development and Design,” UiPath, URL: https://www.uipath.com/blog/ai/leveraging-chatgpt-with-automation-development, dated Feb. 15, 2023. [cited by applicant]
Tahir, O., et al., “WPForms + ChatGPT: How to Send AI Generated Notifications,” WPForms, URL: https://wpforms.com/wpforms-chatgpt-how-to-send-ai-generated-notifications/, dated Apr. 7, 2023. [cited by applicant]
“Chatgpt and Power Automate, the Perfect Combination | Part I ,” IT QUIA, URL: https://itequia.com/en/chatgpt-and-power-automate-part-1/, dated Aug. 3, 2023. [cited by applicant]