IP Library Granted Patent US 12,332,949
Granted Patent B1
US 12,332,949 · App. 18/815,606 · Granted Jun 17, 2025

Generating a hybrid search index for unified search

Inventors: Devin Mancuso (San Francisco, CA); Alan Chu (Arvada, CO); Brett Bergeron (Portland, OR); Maor Bar Asher (New York, NY); Ryan YeePin Yheng (Milpitas, CA); Shweta Kode (Sammamish, WA)
Assignee: Dropbox, Inc.
G06F16/951G06F16/9535G06F16/9537
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,332,949
App. No.
18/815,606
Granted
Jun 17, 2025
Kind
B1
Abstract

The present disclosure is directed toward systems, methods, and non-transitory computer readable media for generating and searching a hybrid search index. In some embodiments, the disclosed systems generate a hybrid search index that comprises one or more content items stored at a content management system or at external network locations linked to the content management system via software connectors along with world state data associated with the one or more content items. The disclosed systems can generate a search result from the hybrid search index in response to receiving a search query of the hybrid search index. In some cases, the disclosed systems can rank one or more content items included in the search result based on observation layer data of the one or more content items.

Claims (70)

1. A computer-implemented method comprising:

identifying a first plurality of content items stored at a content management system and a second plurality of content items stored at external network locations associated with external computer applications, wherein the second plurality of content items is associated with the content management system via software connectors;

determining, for a client device accessing the first plurality of content items and the second plurality of content items, world state data defining:

device metrics exhibited by the client device while accessing the first plurality of content items and the second plurality of content items; and

environmental metrics exhibited by the client device while accessing the first plurality of content items and the second plurality of content items;

generating searchable data from the world state data for the first plurality of content items and the second plurality of content items; and

generating a hybrid search index comprising the searchable data, the first plurality of content items, and the second plurality of content items.

2. The computer-implemented method of claim 1 , wherein generating the searchable data further comprises:

generating, utilizing a large language model, a world state description based on the device metrics and the environmental metrics corresponding to the first plurality of content items and the second plurality of content items.

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

the device metrics comprise at least one of internal device temperature, device movement, device orientation, or device lighting settings of a client device; and

the environmental metrics comprise at least one of device location, environmental lighting conditions, ambient noise, or camera data indicating a position of a user relative to the client device.

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

identifying a user account associated with a client device and the first plurality of content items and the second plurality of content items; and

generating the hybrid search index specific to the user account associated with the client device and the first plurality of content items and the second plurality of content items.

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

detecting one or more changes to the world state data based on the one or more changes to the device metrics or the environmental metrics; and

updating the searchable data by utilizing a large language model to update a world state description based on the one or more changes to the world state data.

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

generating additional searchable data from observation layer data for the first plurality of content items and the second plurality of content items; and

including the additional searchable data from the observation layer data in the hybrid search index.

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

identifying a third plurality of content items stored locally at a client device; and

updating the searchable data by including the world state data defining the device metrics and the environmental metrics corresponding to the third plurality of content items.

8. 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:

identify a first plurality of content items stored at a content management system and a second plurality of content items stored at external network locations associated with external computer applications, wherein the second plurality of content items is associated with the content management system via software connectors;

determine, for the first plurality of content items and the second plurality of content items, observational layer data defining display of one or more content items corresponding to the first plurality of content items and the second plurality of content items provided for display within a graphical user interface of a client device by determining pixel coordinates of the one or more content items within the graphical user interface of the client device;

generate searchable data from the observational layer data for the first plurality of content items and the second plurality of content items; and

generate a hybrid search index comprising the searchable data, the first plurality of content items, and the second plurality of content items.

9. The system of claim 8 , further comprising instructions that, when executed by the at least one processor, cause the system to generate the searchable data by:

generating, utilizing a large language model, an observational layer description based on the display within the graphical user interface of the client device, of the one or more content items corresponding to the first plurality of content items and the second plurality of content items.

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

generate one or more observational metadata tags identifying one or more portions of the one or more content items corresponding to the first plurality of content items and the second plurality of content items provided for display in the graphical user interface of the client device; and

include the one or more observational metadata tags in the hybrid search index.

11. The system of claim 8 , further comprising instructions that, when executed by the at least one processor, cause the system to determine the observational layer data by:

monitoring the graphical user interface of the client device; and

identifying one or more portions of the one or more content items corresponding to the first plurality of content items and the second plurality of content items provided for display in the graphical user interface of the client device.

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

determine an interest of an entity based on the observational layer data; and

update the searchable data to include the interest of the entity based on the observational layer data.

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

generate one or more observational metadata tags corresponding to one or more content items based on detecting display of the one or more content items corresponding to the first plurality of content items and the second plurality of content items provided for display within a graphical user interface of a client device; and

add the one or more observational metadata tags to the hybrid search index.

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

determine user interaction data for the first plurality of content items and the second plurality of content items;

generate additional searchable data from the user interaction data for the first plurality of content items and the second plurality of content items; and

include the additional searchable data from the user interaction data in the hybrid search index.

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

identify a first plurality of content items stored at a content management system and a second plurality of content items stored at external network locations associated with external computer applications, wherein the second plurality of content items is associated with the content management system via software connectors;

determine, for the first plurality of content items and the second plurality of content items, user interaction data defining detected interactions with one or more content items corresponding to the first plurality of content items and the second plurality of content items provided for display within a graphical user interface of a client device associated with a user account;

generate searchable data from the user interaction data for the first plurality of content items and the second plurality of content items by generating, utilizing a large language model, a user interaction description outlining the detected interactions of the user account with the one or more content items corresponding to the first plurality of content items and the second plurality of content items for a given time period; and

generate a hybrid search index comprising the searchable data, the first plurality of content items, and the second plurality of content items.

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

receive, via the client device, one or more user interactions with at least one of one or more selectable elements, one or more text input fields, or one or more cursor locations corresponding to the first plurality of content items and the second plurality of content items provided for display within the graphical user interface of the client device;

generate one or more user interaction metadata tags corresponding to the first plurality of content items and the second plurality of content items based on the one or more user interactions; and

extract content from the first plurality of content items and the second plurality of content items based on the one or more user interaction metadata tags.

17. The non-transitory computer readable medium of claim 15 , further comprising instructions that, when executed by the at least one processor, cause the at least one processor to generate the searchable data from the user interaction data by:

generating, via the large language model, the user interaction description of one or more detected interactions with the first plurality of content items and the second plurality of content items while the client device associated with the user account accesses the first plurality of content items and the second plurality of content items.

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

determine an interest of a user account associated with the client device and the first plurality of content items and the second plurality of content items based on the user interaction data; and

update the searchable data from the user interaction data for the user account by including the interest of user account in the searchable data.

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

detect one or more changes to the user interaction data based on receiving one or more additional user interactions with the first plurality of content items and the second plurality of content items; and

update the searchable data comprising the user interaction data based on the one or more additional user interactions.

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

determine world state data for the first plurality of content items and the second plurality of content items;

generate additional searchable data from the world state data for the first plurality of content items and the second plurality of content items; and

include the additional searchable data from the user interaction data in the hybrid search index.

Assignments (2)
SECURITY INTEREST Recorded Dec 12, 2024
From: DROPBOX, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 069604/0611 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 27, 2024
From: MANCUSO, DEVIN; CHU, ALAN; BERGERON, BRETT; ASHER, MAOR BAR; YHENG, RYAN YEEPIN; KODE, SHWETA
To: DROPBOX, INC.
Reel/Frame 068408/0699 →
References Cited (47)
US 8190541B2 · Downs et al. · 2012 [cited by applicant]
US 8688669B1 · Bernstein · 2014 [cited by applicant]
US 9037579B2 · Pasumarthi et al. · 2015 [cited by applicant]
US 9043358B2 · Cheng et al. · 2015 [cited by applicant]
US 9201889B1 · Madany et al. · 2015 [cited by applicant]
US 9547696B2 · Seth et al. · 2017 [cited by applicant]
US 9558248B2 · Kirazci et al. · 2017 [cited by applicant]
US 9805097B2 · Chang et al. · 2017 [cited by applicant]
US 10318570B2 · Billi-Duran et al. · 2019 [cited by applicant]
US 10528021B2 · Billi et al. · 2020 [cited by applicant]
US 10545492B2 · Billi-Duran et al. · 2020 [cited by applicant]
US 10713307B2 · Bliss et al. · 2020 [cited by applicant]
US 10795895B1 · Taig et al. · 2020 [cited by applicant]
US 11531712B2 · Gupta et al. · 2022 [cited by applicant]
US 11537671B1 · Gray et al. · 2022 [cited by applicant]
US 11645671B2 · Raviv et al. · 2023 [cited by applicant]
US 11720920B1 · Zhou et al. · 2023 [cited by applicant]
US 11741115B2 · Gutiérrez et al. · 2023 [cited by applicant]
US 20120077521A1 · Boldyrev · 2012 [cited by examiner]
US 20140379661A1 · Marcus et al. · 2014 [cited by applicant]
US 20150248410A1 · Stickler et al. · 2015 [cited by applicant]
US 20160132538A1 · Bliss et al. · 2016 [cited by applicant]
US 20160196360A1 · Best et al. · 2016 [cited by applicant]
US 20160224682A1 · Iyer · 2016 [cited by examiner]
US 20160373891A1 · Ramer et al. · 2016 [cited by applicant]
US 20170075997A1 · Wan et al. · 2017 [cited by applicant]
US 20170097933A1 · Rajan et al. · 2017 [cited by applicant]
US 20170351226A1 · Bliss et al. · 2017 [cited by applicant]
US 20170351703A1 · Shreyas · 2017 [cited by examiner]
US 20180075034A1 · Wang et al. · 2018 [cited by applicant]
US 20200334305A1 · Kussmaul et al. · 2020 [cited by applicant]
US 20200334313A1 · Kussmaul et al. · 2020 [cited by applicant]
US 20210150100A1 · Laloi · 2021 [cited by applicant]
US 20210248643A1 · Zhang et al. · 2021 [cited by applicant]
US 20210406332A1 · Helvik et al. · 2021 [cited by applicant]
US 20220156262A1 · Chen et al. · 2022 [cited by applicant]
US 20220414170A1 · Helvik et al. · 2022 [cited by applicant]
US 20230409581A1 · Betthauser et al. · 2023 [cited by applicant]
US 20240202539A1 · Poirier · 2024 [cited by examiner]
US 20240256874A1 · Yousefi Maragheh et al. · 2024 [cited by applicant]
US 20240273145A1 · Baek et al. · 2024 [cited by applicant]
US 20240281487A1 · Bathwal et al. · 2024 [cited by applicant]
CN 110941641B · 2022 [cited by applicant]
CN 111382226B · 2023 [cited by applicant]
“Exalead CloudView™ Platform Highlights,” Dassault Systèmes, 3DS.com/Exalead, 2012, 20 pages, Retrieved from the Internet: URL: https://www.3ds.com/fileadmin/Industries/Federal/3ds-exalead_product-sheet_cloudview-platfo… [cited by applicant]
Notice of Allowance for U.S. Appl. No. 18/815,619 mailed on Nov. 15, 2024, 24 pages. [cited by applicant]
Notice of Allowance for U.S. Appl. No. 18/815,619 mailed on Jan. 16, 2025, 7 pages. [cited by applicant]
Cited By (1)
US 12,547,623