IP Library › Granted Patent US 12,730,814
Granted Patent B1
US 12,730,814 · App. 19/252,724 · Granted Sep 8, 2026

Querying content stacks and generating dynamic content stacks in cloud storage environments

Inventors: Kyle Miller (Fairfax, CA); Christopher Meeks (Austin, TX); Theo Richardson (Toronto, CA)
Assignee: Dropbox, Inc.
G06F16/2455
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,730,814
App. No.
19/252,724
Granted
Sep 8, 2026
Kind
B1
Abstract

The present disclosure relates to systems, non-transitory computer-readable media, and methods for pairing a content management system with a large language model (LLM) to intelligently query groups of related content items. In particular, the disclosed systems can generate content stacks comprising contextually relevant content items. The disclosed systems further utilize an LLM to analyze the content items within the content stack and generate one or more dynamic stack objects (e.g., summaries, timelines, decision logs, or insight views) that synthesize the meaning of content items within a content stack. The disclosed systems can automatically update the dynamic stack objects based on modifications to the content stack. The disclosed systems further generate a content stack data container comprising the content stack and the one or more corresponding dynamic stack objects. The disclosed systems further provide a stack canvas that corresponds to the content stack data container for display to a client device.

Claims (93)

1 . A computer-implemented method comprising:

receiving, from a client device, a stack generation request indicating a content item from a cloud storage database to include in a content stack;

generating, in response to the stack generation request, a content stack data container comprising references to a subset of relevant content items from the cloud storage database, the references to the subset of relevant content items comprising a reference to the content item;

generating, using a large language model to process the subset of relevant content items from the cloud storage database, a dynamic stack object to include within the content stack data container;

adding the dynamic stack object to the content stack data container;

providing, for display on the client device, a stack canvas corresponding to the content stack data container, the stack canvas comprising the dynamic stack object, a visual representation of the content item from the cloud storage database, and a stack-level chat box;

receiving, from the client device and via the stack-level chat box, a user query related to the subset of relevant content items within the content stack data container;

generating a query response by using the large language model to process (i) the user query and (ii) a limited number of content items comprising the subset of relevant content items in the content stack data container; and

providing, for display within the stack canvas, the query response.

2 . The computer-implemented method of claim 1 , further comprising:

receiving, from the client device associated with a user account, a request to associate an additional user account with the content stack data container; and

providing, for display on an additional client device associated with the additional user account, the stack canvas.

3 . The computer-implemented method of claim 1 , further comprising:

detecting a modification to the content stack;

generating, based on the modification to the content stack and using the large language model, an updated dynamic stack object to include within the content stack data container; and

providing, for display on the client device, the stack canvas depicting the updated dynamic stack object.

4 . The computer-implemented method of claim 3 , wherein the modification to the content stack comprises at least one of:

an inclusion of an additional user with access to the content stack;

an inclusion of an additional content item in the content stack;

removal of the content item from the content stack; or

a modification to the content item within the content stack.

5 . The computer-implemented method of claim 3 , further comprising:

generating a notification indicating the modification to the content stack; and

including, within the stack canvas corresponding to the content stack data container, the notification indicating the modification to the content stack.

6 . The computer-implemented method of claim 1 , further comprising:

receiving, from the client device and via the stack canvas, a selection of content items from the subset of relevant content items;

receiving, from the client device and via the stack-level chat box, a second user query related to the selected content items;

generating a second query response using the large language model to process (i) the second user query and (ii) the selected content items; and

providing, for display within the stack canvas, the second query response.

7 . The computer-implemented method of claim 1 , further comprising:

receiving, from the client device, a request to add the query response to the content stack data container;

generating a response content item based on the query response;

adding the response content item to the content stack data container; and

providing, for display on the client device, the stack canvas depicting the response content item.

8 . The computer-implemented method of claim 1 , further comprising:

receiving, from the client device and via the stack canvas, a content block comprising a user-generated data object; and

adding the content block to the content stack data container.

9 . The computer-implemented method of claim 1 , further comprising generating an additional content stack data container by:

generating, using the large language model to process content items from the cloud storage database, a suggested content stack data container comprising one or more references to one or more related content items and a corresponding additional dynamic stack object; and

providing, for display on the client device and within a stack library, a reference to the suggested content stack data container.

10 . The computer-implemented method of claim 1 , further comprising:

determining an expiry condition for the content stack data container; and

archiving the content stack data container based on determining that the expiry condition has been met.

11 . A system comprising:

at least one processor; and

a non-transitory computer readable medium comprising instructions that, when executed by the at least one processor, cause the system to:

receive, from a client device, a stack generation request indicating a content item from a cloud storage database to include in a content stack;

generate, in response to the stack generation request, a content stack data container comprising references to a subset of relevant content items from the cloud storage database, the references to the subset of relevant content items comprising a reference to the content item;

generate, using a large language model to process the subset of relevant content items from the cloud storage database, a dynamic stack object to include within the content stack data container;

add the dynamic stack object to the content stack data container;

provide, for display on the client device, a stack canvas comprising the dynamic stack object, a visual representation of the content item from the cloud storage database, and a stack-level chat box;

receive, from the client device and via the stack-level chat box, a user query related to the subset of relevant content items within the content stack data container;

generate a query response by using the large language model to process (i) the user query and (ii) a limited number of content items comprising the subset of relevant content items in the content stack data container; and

provide, for display within the stack canvas, the query response.

12 . The system of claim 11 , further comprising instructions that, when executed by the at least one processor, cause the system to:

provide, for display within the stack canvas, a global chat box;

receive, from the client device and via the global chat box, a user query related to content within the cloud storage database; and

generate a second query response by using the large language model to process (i) the user query related to content within the cloud storage database and (ii) content within the cloud storage database.

13 . The system of claim 11 , further comprising instructions that, when executed by the at least one processor, cause the system to:

detect a modification to the content stack;

generate, based on the modification to the content stack and using the large language model, an updated dynamic stack object to include within the content stack data container; and

provide, for display on the client device, the stack canvas depicting the updated dynamic stack object.

14 . The system of claim 13 , further comprising instructions that, when executed by the at least one processor, cause the system to:

generate a notification indicating the modification to the content stack; and

include, within the stack canvas corresponding to the content stack data container, the notification indicating the modification to the content stack.

15 . The system of claim 11 , further comprising instructions that, when executed by the at least one processor, cause the system to:

receive, from the client device and via the stack canvas, a selection of content items from the subset of relevant content items;

receive, from the client device and via the stack-level chat box, a second user query related to the selected content items;

generate a second query response using the large language model to process (i) the second user query and (ii) the selected content items; and

provide, for display within the stack canvas, the second query response.

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

receive, from a client device, a stack generation request indicating a content item from a cloud storage database to include in a content stack;

generate, in response to the stack generation request, a content stack data container comprising references to a subset of relevant content items from the cloud storage database, the references to the subset of relevant content items comprising a reference to the content item;

generate, using a large language model to process the subset of relevant content items from the cloud storage database, a dynamic stack object to include within the content stack data container;

add the dynamic stack object to the content stack data container;

provide, for display on the client device, a stack canvas comprising the dynamic stack object, a visual representation of the content item from the cloud storage database, and a stack-level chat box;

receive, from the client device and via the stack-level chat box, a user query related to the subset of relevant content items within the content stack data container;

generate a query response by using the large language model to process (i) the user query and (ii) a limited number of content items comprising the subset of relevant content items in the content stack data container; and

provide, for display within the stack canvas, the query response.

17 . The non-transitory computer readable medium of claim 16 , further comprising instructions that, when executed by the at least one processor, cause the at least one processor to receive the stack generation request by:

generating, using the large language model to process content items from the cloud storage database, a suggested content stack comprising one or more related content items, wherein the one or more related content items comprise the content item;

providing, for display via the client device, the suggested content stack; and

receiving, from the client device, a suggested stack generation request.

18 . The non-transitory computer readable medium of claim 16 , further comprising instructions that, when executed by the at least one processor, cause the at least one processor to:

determine an expiry condition for the content stack data container; and

archive the content stack data container based on determining that the expiry condition has been met.

19 . The non-transitory computer readable medium of claim 16 , further comprising instructions that, when executed by the at least one processor, cause the at least one processor to:

receive, from the client device associated with a user account, a request to associate an additional user account with the content stack data container; and

provide, for display on an additional client device associated with the additional user account, the stack canvas.

20 . The non-transitory computer readable medium of claim 16 , further comprising instructions that, when executed by the at least one processor, cause the at least one processor to:

detect a modification to one or more content items of the subset of relevant content items in the content stack;

generate, based on the modification to the one or more content items and using the large language model, an updated dynamic stack object to include within the content stack data container; and

provide, for display on the client device, the stack canvas depicting the updated dynamic stack object.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 14, 2025
From: MILLER, KYLE; MEEKS, CHRISTOPHER; RICHARDSON, THEO
To: DROPBOX, INC.
Reel/Frame 071694/0357 →
References Cited (71)
US 5161446A · Holbl et al. · 1992 [cited by applicant]
US 5242211A · Grad et al. · 1993 [cited by applicant]
US 6667475B1 · Parran et al. · 2003 [cited by applicant]
US 6965894B2 · Leung · 2005 [cited by examiner]
US 7631290B1 · Reid · 2009 [cited by examiner]
US 7647338B2 · Lazier · 2010 [cited by examiner]
US 7669199B2 · Cope · 2010 [cited by examiner]
US 7885981B2 · Kaufman · 2011 [cited by examiner]
US 7928992B2 · Liu · 2011 [cited by examiner]
US 8161081B2 · Kaufman · 2012 [cited by examiner]
US 8195686B2 · Tago · 2012 [cited by examiner]
US 8386526B2 · Shinjo · 2013 [cited by examiner]
US 8595702B2 · Maybee · 2013 [cited by examiner]
US 8812687B2 · Das · 2014 [cited by examiner]
US 8904352B2 · Klein et al. · 2014 [cited by applicant]
US 8914417B2 · Bryan · 2014 [cited by examiner]
US 9032895B2 · Buck · 2015 [cited by applicant]
US 9063892B1 · Taylor · 2015 [cited by examiner]
US 9619765B2 · Lorentzen et al. · 2017 [cited by applicant]
US 9621428B1 · Lev · 2017 [cited by examiner]
US 9628847B2 · Baker et al. · 2017 [cited by applicant]
US 9697258B2 · Barton · 2017 [cited by examiner]
US 10114573B1 · Ellison · 2018 [cited by examiner]
US 10192523B2 · Luomala et al. · 2019 [cited by applicant]
US 10684749B2 · Hu · 2020 [cited by examiner]
US 11637872B2 · Amento · 2023 [cited by examiner]
US 11637896B1 · Prakashaiah · 2023 [cited by examiner]
US 11652883B2 · Zhang · 2023 [cited by examiner]
US 11657147B1 · Ni · 2023 [cited by examiner]
US 11734564B2 · Jacob · 2023 [cited by examiner]
US 12015619B2 · Subbanna · 2024 [cited by examiner]
US 12184696B2 · Subbanna · 2024 [cited by examiner]
US 12373391B1 · Liao · 2025 [cited by examiner]
US 12373492B2 · Mancuso · 2025 [cited by examiner]
US 20060106758A1 · Chen · 2006 [cited by examiner]
US 20080283732A1 · Rosenkranz et al. · 2008 [cited by applicant]
US 20100031162A1 · Wiser · 2010 [cited by examiner]
US 20100042597A1 · Shinjo · 2010 [cited by examiner]
US 20100094892A1 · Bent · 2010 [cited by examiner]
US 20100192119A1 · Cope · 2010 [cited by examiner]
US 20100333116A1 · Prahlad · 2010 [cited by examiner]
US 20110010386A1 · Zeinfeld · 2011 [cited by examiner]
US 20110191303A1 · Kaufman · 2011 [cited by examiner]
US 20110302526A1 · Thorpe · 2011 [cited by examiner]
US 20120331385A1 · Andreas · 2012 [cited by examiner]
US 20130031137A1 · Chen · 2013 [cited by examiner]
US 20130238785A1 · Hawk · 2013 [cited by examiner]
US 20130275466A1 · Xiao · 2013 [cited by examiner]
US 20140108474A1 · David · 2014 [cited by examiner]
US 20140324913A1 · Morris · 2014 [cited by examiner]
US 20160381151A1 · Apte · 2016 [cited by examiner]
US 20170024393A1 · Choksi · 2017 [cited by examiner]
US 20170302737A1 · Piyush · 2017 [cited by examiner]
US 20180052769A1 · Bryan · 2018 [cited by examiner]
US 20190102570A1 · Broussard · 2019 [cited by examiner]
US 20200004759A1 · Brebner · 2020 [cited by examiner]
US 20200076862A1 · Eliason · 2020 [cited by examiner]
US 20200312029A1 · Heinen · 2020 [cited by examiner]
US 20210272372A1 · Heinen · 2021 [cited by examiner]
US 20220247788A1 · Subbanna · 2022 [cited by examiner]
US 20230142055A1 · Bankston · 2023 [cited by examiner]
US 20240273145A1 · Baek · 2024 [cited by examiner]
US 20240403341A1 · Berglund · 2024 [cited by examiner]
US 20240403366A1 · Mancuso · 2024 [cited by examiner]
US 20240403551A1 · Berglund · 2024 [cited by examiner]
US 20250013655A1 · Mohanty · 2025 [cited by examiner]
US 20250036695A1 · De Barros et al. · 2025 [cited by applicant]
US 20250094708A1 · Cunningham · 2025 [cited by examiner]
US 20250147712A1 · Li · 2025 [cited by examiner]
US 20250348271A1 · Matas · 2025 [cited by examiner]
EP 3010413B1 · 2019 [cited by applicant]