IP Library › Granted Patent US 11,100,146
Granted Patent B1
US 11,100,146 · App. 15/933,849 · Granted Aug 24, 2021

System management using natural language statements

Inventors: Jordan Barry Brest (San Jose, CA); Gunja Agrawal (Mountain View, CA); Rahul Sharma (Mountain View, CA); Venkata Keerthana Atchutuni (Sunnyvale, CA); Vijay Dheeraj Reddy Mandadi (Fremont, CA)
Assignee: Amazon Technologies, Inc.
G06F16/3329G06F16/24578G06F21/32G06F40/205
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,100,146
App. No.
15/933,849
Granted
Aug 24, 2021
Kind
B1
Abstract

Technologies are provided for managing computer system resources using natural language statements. A natural language statement can be received from a user computing device by a management service. The natural language statement can be analyzed to identify an executable command, and the command can be executed against one or more system resources. If the system resources are located in separate computing environments, different operations can be used to target the system resources in the separate computing environments. A script repository can be searched to identify an executable script containing the command referenced by the received natural language statement. A message can be transmitted to the user device, recommending execution of the identified script. In a different or further embodiment, if a given user is not authorized to execute a given command or script, a request for authorization can be sent to a supervisor of the given user.

Claims (69)

1. A system, comprising:

a management server comprising a processor and a memory storing executable instructions that, when executed by the processor, cause the management server to perform operations, the operations comprising:

receiving a first natural language statement from a user device;

parsing the first natural language statement to identify an executable command targeting a system resource in a computer network;

identifying an executable script in a script store that comprises an executable computer program that begins with the identified executable command and contains other executable commands, wherein identifying the executable script occurs subsequent to identifying the executable command;

transmitting the identified executable script as a recommendation to the user device to execute the identified executable script;

receiving a second natural language statement from the user device;

parsing the second natural language statement to identify a command to execute the identified executable script; and

executing the identified executable script, wherein the executing the identified executable script comprises executing the identified executable command targeting the system resource in the computer network.

2. The system of claim 1 , wherein the executing the identified executable script further comprises executing another command targeting another system resource in another computer network.

3. The system of claim 1 , wherein the identifying the executable script comprises:

searching the script store for executable scripts that comprise executable computer programs that begin with the identified executable command;

ranking the executable scripts that comprise executable computer programs that being with the identified executable command; and

selecting a highest ranked script of the executable scripts that begin with the identified executable command.

4. The system of claim 1 , wherein the operations further comprise:

determining whether a user is authorized to execute the identified executable script.

5. The system of claim 4 , wherein determining whether the user is authorized comprises:

transmitting a request for authorization to a supervising user device;

receiving a natural language statement from the supervising user device; and

parsing the natural language statement from the supervising user device to identify a command authorizing execution of the identified executable script.

6. A method, comprising:

receiving a natural language statement at a computing device from a user;

identifying an executable command using the natural language statement;

determining that the executable command is part of an executable script comprising an executable computer program that includes the executable command and other executable commands wherein determining that the executable command is part of the executable script occurs subsequent to identifying the executable command;

presenting the executable script as a recommendation to execute the executable script against the computing environment to the user;

receiving a second natural language statement at the computing device from the user;

parsing the second natural language statement to identify a request to execute the executable script; and

executing the executable script that, when executed, performs an operation targeting a computing resource in a computing environment, wherein executing the executable script comprises executing the executable command and the other executable commands.

7. The method of claim 6 , further comprising:

identifying multiple executable scripts that comprise executable computer programs starting with the executable command;

ranking the multiple executable scripts; and

selecting one of the ranked executable scripts as a recommended executable script.

8. The method of claim 7 , wherein the ranking the multiple executable scripts is based on a frequencies of execution of the multiple executable scripts.

9. The method of claim 7 , wherein the ranking the multiple executable scripts is based on execution times of the multiple executable scripts.

10. The method of claim 6 , wherein the executing the executable script comprises executing the executable command against a server in the computing environment.

11. The method of claim 10 , wherein the executing the executable script further comprises executing another executable command against another server in another computing environment.

12. The method of claim 6 , further comprising:

determining whether the user is authorized to execute the executable script.

13. The method of claim 12 , wherein the determining whether the user is authorized to execute the executable script comprises:

transmitting a notification to a computing device of a supervisor of the user, requesting approval to execute the executable script; and

receiving a message from the computing device of the supervisor, approving the execution.

14. The method of claim 13 , wherein:

the notification comprises a natural language statement; and

the message received from the computing device of the supervisor comprises another natural language statement.

15. A system, comprising:

a natural language processor configured to:

receive a natural language statement from a user device via a computer network,

identify an executable command referenced by the natural language statement,

transmit an identifier for the executable command to a management server,

receive an identifier for an executable script containing an executable computer program that contains the executable command and other executable commands from the management server, and

transmit a script suggestion, comprising the identifier for the executable script, to the user device via the computer network;

receive another natural language statement from the user device,

determine that the another natural language statement comprises a request to execute the executable script,

transmit a request to execute the executable script to the management server; and

the management server, configured to:

receive the identifier for the executable command from the natural language processor,

execute the executable command,

identify the executable script containing the executable computer program that contains the executable command and other executable commands, wherein identifying the executable script occurs subsequent to executing the executable command,

transmit the identifier for the executable script to the natural language processor,

receive the request to execute the executable script from the natural language processor, and

execute the other executable commands of the executable script, wherein executing the other executable commands comprises performing an operation targeting a computing resource in a computing environment.

16. The system of claim 15 , wherein identifying the executable script comprises:

searching for executable scripts that comprise executable computer programs that begin with the executable command;

ranking the executable scripts based on a frequency of execution; and

selecting an executable script, of the executable scripts, that has a highest frequency of execution, of the ranked executable scripts.

17. The system of claim 15 , wherein:

the natural language statement comprises an audio message provided by a user using the user device;

the natural language processor is further configured to determine an identity of the user based on the audio message; and

the management server is further configured to determine that the user is authorized to execute the executable command.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 24, 2018
From: BREST, JORDAN BARRY; AGRAWAL, GUNJA; SHARMA, RAHUL; ATCHUTUNI, VENKATA KEERTHANA; MANDADI, VIJAY DHEERAJ REDDY
To: AMAZON TECHNOLOGIES, INC.
Reel/Frame 045622/0542 →
Cited By (1)
US 12,694,124