IP Library Granted Patent US 11,983,221
Granted Patent B2
US 11,983,221 · App. 17/964,274 · Granted May 14, 2024

Method, apparatus and computer program product for generating tiered search index fields in a group-based communication platform

Inventors: Joshua Wills (San Francisco, CA); Luis Tandalla (New York, NY); Japinder Singh (New York, NY)
Assignee: Salesforce, Inc.
G06F16/902G06F16/9032G06F16/9035G06F16/906G06N20/00
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 11,983,221
App. No.
17/964,274
Granted
May 14, 2024
Kind
B2
Abstract

Methods, apparatus and computer program product for generating tiered search index fields based on a divided group-based communication data corpus in a group-based communication platform are described herein. In some embodiments, the system provides for receiving a group-based communication data corpus, generating a retrieval score, and assigning each group-based communication data object associated with a retrieval score. Each group-based communication data object may meet or exceed a retrieval score threshold of a high retrieval probability corpus. Each group-based communication data object associated with a retrieval score below the retrieval score threshold may be assigned to a low retrieval probability corpus. High and a low retrieval probability search index fields may be generated and associated with the high and low retrieval probability corpus.

Claims (49)

1. A system for generating tiered search index fields, the system comprising at least one processor and at least one non-transitory memory including computer-executable instructions that, when executed by the at least one processor, performs a method comprising:

receiving a plurality of data objects from a group-based communication system that supports messages exchanged between one or more users;

generating a retrieval score for each data objects of the plurality of data objects;

assigning a first set of data objects of the plurality of data objects associated with a high retrieval score exceeding a retrieval score threshold to a high retrieval probability set;

assigning a second set of data objects of the plurality of data objects associated with a low retrieval score below the retrieval score threshold to a low retrieval probability set;

receiving a search term indicating a request for a subset of data objects of the plurality of data objects;

determining, based on characteristics of the search term, a query search result probability indicating a probability of retrieving one or more data objects from the high retrieval probability set;

combining the high retrieval probability set and the low retrieval probability set into a combined retrieval probability set based on the query search result probability, the combined retrieval probability set comprising both the first set of data objects and the second set of data objects; and

retrieving, from the combined retrieval probability set, the subset of data objects of the plurality of data objects by querying the first set of data objects and the second set of data objects in the combined retrieval probability set in parallel.

2. The system of claim 1 , wherein the retrieval score is generated by a machine learning model based at least on one or more of a message length, a term frequency-inverse document frequency (tf-idf) score, a historical group message search rate, a historical channel message search rate, a historical user message search rate, a historical user-channel message search rate, a user type, a message age, an activity notification, a message format, a message type, a reply count, or a message source.

3. The system of claim 1 , wherein the method further comprises:

generating a relevancy score for a data object of the plurality of data objects, the relevancy score representing a likelihood that the data object comprises one or more data object features matching to the search term.

4. The system of claim 1 , wherein the method further comprises generating, a recency score for each data object of the plurality of data objects, the recency score representing a network timespan between a data object creation time and a search query receiving time.

5. The system of claim 1 , wherein the method further comprises generating the combined retrieval probability set by querying the high retrieval probability set and the low retrieval probability set in parallel.

6. The system of claim 1 , wherein the method further comprises ordering each data object of the combined retrieval probability set based on respective retrieval scores.

7. The system of claim 1 , wherein the method further comprises transmitting subset of the plurality of data objects to a combined search results interface for rendering by a client device.

8. A computer-implemented method for generating tiered search index fields, comprising:

receiving a plurality of data objects from a group-based communication system that supports messages exchanged between one or more users;

generating a retrieval score for each data object of the plurality of data objects;

assigning a first set of data objects of the plurality of data objects associated with a high retrieval score exceeding a retrieval score threshold to a high retrieval probability set;

assigning a second set of data objects of the plurality of data objects associated with a low retrieval score below the retrieval score threshold to a low retrieval probability set;

receiving a search term indicating a request for a subset of data objects of the plurality of data objects;

determining, based on characteristics of the search term, a query search result probability indicating a probability of retrieving one or more data objects from the high retrieval probability set;

combining the high retrieval probability set and the low retrieval probability set into a combined retrieval probability set based on the query search result probability, the combined retrieval probability set comprising both the first set of data objects and the second set of data objects; and

retrieving, from the combined retrieval probability set, the subset of data objects of the plurality of data objects by querying the first set of data objects and the second set of data objects in the combined retrieval probability set in parallel.

9. The computer-implemented method of claim 8 , wherein the retrieval score is generated by a machine learning model based at least on one or more of a message length, a term frequency-inverse document frequency (tf-idf) score, a historical group message search rate, a historical channel message search rate, a historical user message search rate, a historical user-channel message search rate, a user type, a message age, an activity notification, a message format, a message type, a reply count, or a message source.

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

generating a relevancy score for a data object of the plurality of data objects, the relevancy score representing a likelihood that the data object comprises one or more data object features matching to the search term.

11. The computer-implemented method of claim 8 , further comprising generating a recency score for each data object of the plurality of data objects, the recency score representing a network timespan between a data object creation time and a search query receiving time.

12. The computer-implemented method of claim 8 , further comprising generating the combined retrieval probability set by querying the high retrieval probability set and the low retrieval probability set in parallel.

13. The computer-implemented method of claim 8 , further comprising ordering each data object of the combined retrieval probability set based on respective retrieval scores.

14. The computer-implemented method of claim 8 , further comprising transmitting the subset of the plurality of data objects to a combined search results interface for rendering by a client device.

15. One or more non-transitory computer-readable media storing computer-executable instructions that, when executed by at least one processor, performs a method of generating tiered search index fields, comprising:

receiving a plurality of data objects from a group-based communication system that supports messages exchanged between one or more users;

generating a retrieval score for each data object of the plurality of data objects;

assigning a first set of data objects of the plurality of data objects associated with a high retrieval score exceeding a retrieval score threshold to a high retrieval probability set;

assigning a second set of data objects of the plurality of data objects associated with a low retrieval score below the retrieval score threshold to a low retrieval probability set;

receiving a search term indicating a request for a subset of data objects of the plurality of data objects;

determining, based on characteristics of the search term, a query search result probability indicating a probability of retrieving one or more data objects from the high retrieval probability set;

combining the high retrieval probability set and the low retrieval probability set into a combined retrieval probability set based on the query search result probability, the combined retrieval probability set comprising both the first set of data objects and the second set of data objects; and

retrieving, from the combined retrieval probability set, the subset of data objects of the plurality of data objects by querying the first set of data objects and the second set of data objects in the combined retrieval probability set in parallel.

16. The media of claim 15 , wherein the retrieval score is generated by a machine learning model based at least on one or more of a message length, a term frequency-inverse document frequency (tf-idf) score, a historical group message search rate, a historical channel message search rate, a historical user message search rate, a historical user-channel message search rate, a user type, a message age, an activity notification, a message format, a message type, a reply count, or a message source.

17. The media of claim 15 , wherein the method further comprises:

generating a relevancy score for a data object of the plurality of data objects, the relevancy score representing a likelihood that the data object comprises one or more data object features matching to the search term.

18. The media of claim 15 , wherein the method further comprises generating, a recency score for each data object of the plurality of data objects, the recency score representing a network timespan between a data object creation time and a search query receiving time.

19. The media of claim 15 , wherein the method further comprises generating the combined retrieval probability set by querying the high retrieval probability set and the low retrieval probability set in parallel.

20. The media of claim 15 ,

wherein the method further comprises ordering each data object of the combined retrieval probability set based on respective retrieval scores, and

wherein the method further comprises transmitting the subset of the plurality of data objects to a combined search results interface for rendering by a client device.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 18, 2023
From: SLACK TECHNOLOGIES, LLC
To: SALESFORCE, INC.
Reel/Frame 064642/0564 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 16, 2022
From: WILLS, JOSHUA; TANDALLA, LUIS; SINGH, JAPINDER
To: SLACK TECHNOLOGIES, INC.
Reel/Frame 061789/0972 →
MERGER Recorded Nov 16, 2022
From: SLACK TECHNOLOGIES, INC.
To: SLACK TECHNOLOGIES, LLC
Reel/Frame 061790/0064 →
Continuity (3)
Continuation 16885885 · May 28, 2020
Provisional Application 62853608 · May 28, 2019
Related Publication 20230037222A1 · Feb 2, 2023