IP Library Granted Patent US 12,373,507
Granted Patent B2
US 12,373,507 · App. 18/771,454 · Granted Jul 29, 2025

Artificial intelligence driven personalization for content authoring applications

Inventors: Vipindeep Vangala (Hyderabad, IN); Rajesh Gunda (Hyderabad, IN); Rashi Anand (Hyderabad, IN); Nishchay Kumar (Hyderabad, IN); Sapna Grover (Hyderabad, IN)
Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
G06F16/9535G06F3/0481G06F40/279G06F40/30G06N20/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 12,373,507
App. No.
18/771,454
Granted
Jul 29, 2025
Kind
B2
Abstract

A computing system obtain a keyword and an identifier for a user of a content authoring application. Based upon the keyword and identifier for the user, the computing system walks a user graph comprising nodes connected by edges. The walk comprises identifying seed nodes in the user graph representing at least one topic that corresponds to the keyword and identifying second level nodes in the user graph that are connected to the seed nodes. The second level nodes represent first content that is associated with the user. The computing system transmits contextual data that is based upon the first content to the content authoring application. The contextual data is processed and formatted and is included in second content presentable by the content authoring application. The contextual data may be used to autogenerate the second content without user input. The second content may be modified by the user as desired.

Claims (66)

1. A computing system, comprising:

a processor; and

memory storing instructions that, when executed by the processor, cause the processor to perform acts comprising:

obtaining a keyword and an identifier for a user of a content authoring application;

identifying a user graph based upon the identifier for the user, wherein the user graph is identified from amongst a plurality of computer-implemented user graphs;

identifying a portion of the user graph corresponding to at least one topic related to the keyword;

extracting a computer-readable first content from the portion of the user graph;

obtaining contextual data based upon the first content; and

transmitting the contextual data to the content authoring application, and wherein the contextual data is included in computer-readable second content that is presentable by the content authoring application.

2. The computing system of claim 1 , wherein the keyword is obtained from at least one of a user query, a topic sentence, or a title input to the content authoring application.

3. The computing system of claim 1 , the acts further comprising:

prior to obtaining the keyword and the identifier for the user, obtaining user activity data for the user from a plurality of applications, the plurality of applications including the content authoring application; and

generating the user graph based upon the user activity data.

4. The computing system of claim 1 , wherein the first content is one of:

an email;

a document;

a slideshow presentation;

a message that has been sent via a real-time messaging application; or

a spreadsheet.

5. The computing system of claim 1 , wherein obtaining the contextual data comprises:

identifying a first candidate contextual data and a second candidate contextual data; and

ranking the first candidate contextual data and the second candidate contextual data;

prior to transmitting the contextual data to the content authoring application, selecting the contextual data based upon the ranking.

6. The computing device of claim 5 , wherein the ranking of the first candidate contextual data and the second candidate contextual data is based upon user activity data for the user from a plurality of applications.

7. The computing system of claim 1 , wherein the contextual data is generated based upon the first content.

8. The computing system of claim 7 , wherein the contextual data comprises a summary derived from the first content, wherein the summary is obtained by way of providing the first content as input into a natural language processing (NLP) model which generates an output comprising the summary.

9. The computing system of claim 7 , wherein the generated contextual data comprises an extracted portion of the first content.

10. The computing system of claim 1 , wherein the second content presentable by the content authoring application is one of:

a slideshow presentation;

a document;

a spreadsheet;

an email; or

a message that is to be sent via a real-time messaging application.

11. The computing system of claim 1 , further comprising:

based upon the keyword and the identifier for the user, identifying at least one tenancy of the user;

for each identified tenancy, walking a computer-implemented tenancy graph, wherein the tenancy graph comprises nodes and edges connecting the nodes, wherein walking the tenancy graph comprises:

identifying at least one seed node in the tenancy graph, wherein the at least one seed node represents the at least one topic that corresponds to the keyword; and

identifying at least one second level node in the tenancy graph connected to the at least one seed node via a at least one edge, wherein the at least one second level node represents computer-readable third content of the tenancy; and

transmitting second contextual data to the content authoring application, wherein the second contextual data is based upon the third content, and further wherein the second contextual data is included in the second content that is presentable by the content authoring application.

12. The computing system of claim 11 , wherein the at least one tenancy of the user is identified based upon at least one of the keyword, the identifier for the user, or access control information.

13. The computing system of claim 11 , wherein identifiers for users are selected by the user, wherein the users are to view the second content, wherein the access control information is identified based on the selected identifiers for the users, wherein walking the tenancy graph is limited based upon the access control information.

14. The computing system of claim 1 , wherein obtaining the contextual data comprises executing an artificial intelligence (AI) algorithm that takes at least a portion of the first content as input, wherein the AI algorithm outputs the contextual data.

15. A method executed by a processor of a computing system, the method comprising:

obtaining a keyword and an identifier for a user of a content authoring application;

identifying a user graph based upon the identifier for the user, wherein the user graph is identified from amongst a plurality of computer-implemented user graphs;

identifying a portion of the user graph corresponding to at least one topic related to the keyword;

extracting a computer-readable first content from the portion of the user graph;

obtaining contextual data based upon the first content; and

transmitting the contextual data to the content authoring application, and wherein the contextual data is included in computer-readable second content that is presentable by the content authoring application.

16. The method of claim 15 , further comprising:

prior to obtaining the keyword and the identifier for the user, obtaining user activity data for the user from a plurality of applications, the plurality of applications including the content authoring application.

17. The method of claim 16 , wherein obtaining the contextual data comprises:

identifying a first candidate contextual data and a second candidate contextual data; and

ranking the first candidate contextual data and the second candidate contextual data, wherein the ranking is based upon the user activity data;

prior to transmitting the contextual data to the content authoring application, selecting the contextual data based upon the ranking.

18. The method of claim 15 , wherein obtaining the contextual data comprises:

accessing the first content based upon the identifier for the user data source and the identifier for the first content; and

processing the first content to generate the contextual data, wherein the contextual data is stored in a contextual data store upon the content being processed.

19. The method of claim 15 , wherein obtaining the contextual data comprises executing an artificial intelligence (AI) algorithm that takes at least a portion of the first content as input, wherein the AI algorithm outputs the contextual data.

20. A non-transitory computer-readable storage medium comprising instructions that, when executed by a processor, cause the processor to perform acts comprising:

obtaining a keyword and an identifier for a user of a content authoring application;

identifying a user graph based upon the identifier for the user, wherein the user graph is identified from amongst a plurality of computer-implemented user graphs;

identifying a portion of the user graph corresponding to at least one topic related to the keyword;

extracting a computer-readable first content from the portion of the user graph;

obtaining contextual data based upon the first content; and

transmitting the contextual data to the content authoring application, and wherein the contextual data is included in computer-readable second content that is presentable by the content authoring application.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 12, 2024
From: VANGALA, VIPINDEEP; GUNDA, RAJESH; ANAND, RASHI; KUMAR, NISHCHAY; GROVER, SAPNA
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 067979/0054 →
Continuity (2)
Continuation 17145554 · Jan 11, 2021
Related Publication 20240362285A1 · Oct 31, 2024
References Cited (14)
US 10462215B2 · Gill et al. · 2019 [cited by applicant]
US 20050262081A1 · Newman · 2005 [cited by applicant]
US 20160092416A1 · Kohlmeier et al. · 2016 [cited by applicant]
US 20160294761A1 · Hameed et al. · 2016 [cited by applicant]
US 20170161279A1 · Franceschini et al. · 2017 [cited by applicant]
US 20180114111A1 · Gill et al. · 2018 [cited by applicant]
Radford, et al., “Better Language Models and Their Implications”, Retrieved from: https://web.archive.org/web/20201209195559/https:/openai.com/blog/better-language-models/, Dec. 9, 2020, 12 Pages. [cited by applicant]
Wright, Mic, “Haiku Deck's new AI tool can automatically generate your next presentation”, Retrieved from: https://thenextweb.com/apps/2015/03/05/haiku-decks-new-ai-tool-can-automatically-generate-your-next-presentation… [cited by applicant]
“International Search Report and Written Opinion Received for PCT Application No. PCT/US21/061048”, Mailed Date: Mar. 18, 2022, 11 Pages. [cited by applicant]
“Non-Final Office Action Issued in U.S. Appl. No. 17/145,554”, Mailed Date: Nov. 7, 2022, 28 Pages. [cited by applicant]
“Final Office Action Issued in U.S. Appl. No. 17/145,554”, Mailed Date: Aug. 17, 2023, 16 Pages. [cited by applicant]
“Response to Non-Final Office Action Issued in U.S. Appl. No. 17/145,554”, filed May 8, 2023, 11 Pages. [cited by applicant]
“Notice of Appeal Filed in U.S. Appl. No. 17/145,554”, filed Jan. 17, 2024, 2 Pages. [cited by applicant]
“Notice of Allowance Issued in U.S. Appl. No. 17/145,554”, Mailed Date: Mar. 27, 2024, 16 Pages. [cited by applicant]