Systems and methods for real-time document recommendation

US12292906B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-12292906-B2
Application numberUS-202318160449-A
CountryUS
Kind codeB2
Filing dateJan 27, 2023
Priority dateJan 27, 2023
Publication dateMay 6, 2025
Grant dateMay 6, 2025

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Embodiments described herein provide systems and methods for document recommendation. A system receives a set of training data including a plurality of documents. The system determines whether the set of training data includes annotated contextual information corresponding to the plurality of documents. The system trains supervised and/or unsupervised models based on the availability of data. The models are used to generate vectors representing the documents. During a live text conversation, text from the conversation may be vectorized using the models and the vectors compared to those representing the documents in order to find the most relevant documents. The system may generate an indication of a recommended document.

First claim

Opening claim text (preview).

What is claimed is: 1. A method of document recommendation, the method comprising: receiving, via a data interface, a set of training data including a plurality of documents; determining whether the set of training data includes annotated contextual information corresponding to the plurality of documents; training a document recommendation model using the plurality of documents according to an unsupervised procedure thereby producing a first plurality of vectors respectively representing the plurality of documents; training the document recommendation model using the plurality of documents, and the annotated contextual information as supervisory labels, thereby producing a second plurality of vectors respectively representing the plurality of documents, when the set of training data includes the annotated contextual information; receiving a user utterance associated with a conversation; encoding the user utterance and/or at least part of the conversation into a conversation representation; determining a plurality of scores by comparing the conversation representation with the first plurality or the second plurality of vectors; and generating, by a decoder of the document recommendation model, an indication of a recommended document from the plurality of documents based on the plurality of scores. 2. The method of claim 1 , further comprising: determining a document recommendation based on a first comparison between the representation of the utterance and the first plurality of vectors, and further based on a comparison between the representation of the utterance and the second plurality of vectors, wherein the indication of the recommended document is based on the document recommendation. 3. The method of claim 1 , wherein the training the document recommendation model using the annotated contextual information is performed in response to a determination that an amount of annotated contextual information is above a predetermined threshold. 4. The method of claim 3 , wherein individual items of the annotated contextual information are included in the determined amount if they are in a selected natural language. 5. The method of claim 1 , further comprising: training the document recommendation model using the plurality of documents, and the annotated contextual information as supervisory labels a second time in response to a determination that additional annotated contextual information is available. 6. The method of claim 1 , wherein the generating the indication of the recommended document is further based on respective popularity scores associated with the plurality of documents, wherein the respective popularity scores are based on a frequency with which each document of the plurality of documents is accessed. 7. The method of claim 1 , wherein the determining the plurality of scores comprises computing each respective score of the plurality of scores by a weighted sum of a first score associated with the first plurality of vectors and a second score associated with the second plurality of vectors. 8. A system for document recommendation, the system comprising: a memory that stores a document recommendation model and a plurality of processor executable instructions; a communication interface that receives a set of training data including a plurality of documents; and one or more hardware processors that read and execute the plurality of processor-executable instructions from the memory to perform operations comprising: determining whether the set of training data includes annotated contextual information corresponding to the plurality of documents; training the document recommendation model using the plurality of documents according to an unsupervised procedure thereby producing a first plurality of vectors respectively representing the plurality of documents; training the document recommendation model using the plurality of documents, and the annotated contextual information as supervisory labels, thereby producing a second plurality of vectors respectively representing the plurality of documents, when the set of training data includes the annotated contextual information; receiving a user utterance associated with a conversation; the user utterance and/or at least part of the conversation into a conversation representation; determining a plurality of scores by comparing the conversation representation with the first plurality or the second plurality of vectors; and generating, by a decoder of the document recommendation model, an indication of a recommended document from the plurality of documents based on the plurality of scores. 9. The system of claim 8 , the operations further comprising: determining a document recommendation based on a first comparison between the representation of the utterance and the first plurality of vectors, and further based on a comparison between the representation of the utterance and the second plurality of vectors, wherein the indication of the recommended document is based on the document recommendation. 10. The system of claim 8 , wherein the training the document recommendation model using the annotated contextual information is performed in response to a determination that an amount of annotated contextual information is above a predetermined threshold. 11. The system of claim 10 , wherein individual items of the annotated contextual information are included in the determined amount if they are in a selected natural language. 12. The system of claim 8 , the operations further comprising: training the document recommendation model using the plurality of documents, and the annotated contextual information as supervisory labels a second time in response to a determination that additional annotated contextual information is available. 13. The system of claim 8 , wherein the generating the indication of the recommended document is further based on respective popularity scores associated with the plurality of documents, wherein the respective popularity scores are based on a frequency with which each document of the plurality of documents is accessed. 14. The system of claim 8 , wherein the determining the plurality of scores comprises computing each respective score of the plurality of scores by a weighted sum of a first score associated with the first plurality of vectors and a second score associated with the second plurality of vectors. 15. A non-transitory machine-readable medium comprising a plurality of machine-executable instructions which, when executed by one or more processors, are adapted to cause the one or more processors to perform operations comprising: receiving, via a data interface, a set of training data including a plurality of documents; determining whether the set of training data includes annotated contextual information corresponding to the plurality of documents; training a document recommendation model using the plurality of documents according to an unsupervised procedure thereby producing a first plurality of vectors respectively representing the plurality of documents; training the document recommendation model using the plurality of documents, and the annotated contextual information as supervisory labels, thereby producing a second plurality of vectors respectively representing the plurality of documents, when the set of training data includes the annotated contextual information; receiving a user utterance associated with a conversation; encoding the user utterance and/or at least part of the conversation into a conversation representation; determining a plurality of scores by comparing the conversation representa

Assignees

Inventors

Classifications

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US12292906B2 cover?
Embodiments described herein provide systems and methods for document recommendation. A system receives a set of training data including a plurality of documents. The system determines whether the set of training data includes annotated contextual information corresponding to the plurality of documents. The system trains supervised and/or unsupervised models based on the availability of data. T…
Who is the assignee on this patent?
Salesforce Inc
What technology area does this patent fall under?
Primary CPC classification G06F16/3329. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue May 06 2025 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).