IP Library Granted Patent US 12,430,102
Granted Patent B2
US 12,430,102 · App. 18/123,450 · Granted Sep 30, 2025

Automatically modifying user code using artificial intelligence techniques

Inventors: Srinivas Varadharajan (Austin, TX); Rakshith Vasudev (Austin, TX); Yunfan Han (Austin, TX)
Assignee: Dell Products L.P.
G06F8/30G06N5/04
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,430,102
App. No.
18/123,450
Granted
Sep 30, 2025
Kind
B2
Abstract

Methods, apparatus, and processor-readable storage media for automatically modifying user code using artificial intelligence techniques are provided herein. An example computer-implemented method includes obtaining user-provided code and one or more items of information associated with the user-provided code; determining code functionality information and one or more execution-related details associated with the user-provided code by processing at least a portion of the user-provided code and at least a portion of the items of information using artificial intelligence techniques; generating one or more code segments, related to one or more portions of the user-provided code, by processing the code functionality information and the execution-related detail(s) using the artificial intelligence techniques; executing at least a portion of the code segment(s) in at least one simulation environment; and performing one or more automated actions based on results from executing the at least a portion of the code segment(s).

Claims (38)

1. A computer-implemented method comprising:

obtaining user-provided code and one or more items of information associated with the user-provided code, the one or more items of information comprising (i) one or more environment details related to the user-provided code, (ii) information pertaining to one or more compute resources associated with the user-provided code, and (iii) one or more user-provided tags, related to one or more user requirements, attributed to the user-provided code;

determining code functionality information associated with the user-provided code and one or more execution-related details associated with the user-provided code by processing at least a portion of the user-provided code and at least a portion of the one or more items of information using one or more artificial intelligence techniques;

generating one or more code segments, related to the at least a portion of the user-provided code, by processing the code functionality information and the one or more execution-related details using the one or more artificial intelligence techniques;

executing at least a portion of the one or more code segments in at least one simulation environment; and

performing one or more automated actions based at least in part on results from executing the at least a portion of the one or more code segments in the at least one simulation environment, wherein performing one or more automated actions comprises automatically replacing at least part of the user-provided code with at least a corresponding part of the one or more code segments;

wherein the method is performed by at least one processing device comprising a processor coupled to a memory.

2. The computer-implemented method of claim 1 , wherein performing one or more automated actions comprises recommending, to the user, at least one of the one or more code segments based at least in part on the results from executing the at least a portion of the one or more code segments in the at least one simulation environment.

3. The computer-implemented method of claim 2 , wherein recommending at least one of the one or more code segments comprises outputting one or more performance details corresponding to the at least one code segment in conjunction with identifying the at least one code segment being recommended to the user.

4. The computer-implemented method of claim 2 , wherein performing one or more automated actions comprises generating and outputting, to the user, at least one script corresponding to the at least one code segment being recommended.

5. The computer-implemented method of claim 2 , wherein performing one or more automated actions comprises automatically training the one or more artificial intelligence techniques using feedback provided by the user in connection with the at least one recommended code segment.

6. The computer-implemented method of claim 1 , wherein obtaining one or more items of information associated with the user-provided code comprises obtaining a user-selected level of autonomy associated with the user-provided code.

7. The computer-implemented method of claim 1 , wherein generating one or more code segments comprises processing the code functionality information and the one or more execution-related details using at least one encoder-decoder network.

8. The computer-implemented method of claim 1 , wherein determining code functionality information associated with the user-provided code and one or more execution-related details associated with the user-provided code comprises processing the at least a portion of the user-provided code and the at least a portion of the one or more items of information using at least one encoder-decoder network.

9. The computer-implemented method of claim 1 , wherein executing at least a portion of the one or more code segments in at least one simulation environment comprises determining one or more quality of service metrics associated with the one or more code segments.

10. The computer-implemented method of claim 1 , wherein executing at least a portion of the one or more code segments in at least one simulation environment comprises determining time to workload completion information associated with the one or more code segments.

11. The computer-implemented method of claim 1 , wherein the user-provided code comprises code associated with one or more artificial intelligence-based workloads.

12. A non-transitory processor-readable storage medium having stored therein program code of one or more software programs, wherein the program code when executed by at least one processing device causes the at least one processing device:

to obtain user-provided code and one or more items of information associated with the user-provided code, the one or more items of information comprising (i) one or more environment details related to the user-provided code, (ii) information pertaining to one or more compute resources associated with the user-provided code, and (iii) one or more user-provided tags, related to one or more user requirements, attributed to the user-provided code;

to determine code functionality information associated with the user-provided code and one or more execution-related details associated with the user-provided code by processing at least a portion of the user-provided code and at least a portion of the one or more items of information using one or more artificial intelligence techniques;

to generate one or more code segments, related to the at least a portion of the user-provided code, by processing the code functionality information and the one or more execution-related details using the one or more artificial intelligence techniques;

to execute at least a portion of the one or more code segments in at least one simulation environment; and

to perform one or more automated actions based at least in part on results from executing the at least a portion of the one or more code segments in the at least one simulation environment, wherein performing one or more automated actions comprises automatically replacing at least part of the user-provided code with at least a corresponding part of the one or more code segments.

13. The non-transitory processor-readable storage medium of claim 12 , wherein performing one or more automated actions comprises recommending, to the user, at least one of the one or more code segments based at least in part on the results from executing the at least a portion of the one or more code segments in the at least one simulation environment.

14. The non-transitory processor-readable storage medium of claim 12 , wherein obtaining one or more items of information associated with the user-provided code comprises obtaining a user-selected level of autonomy associated with the user-provided code.

15. The non-transitory processor-readable storage medium of claim 12 , wherein generating one or more code segments comprises processing the code functionality information and the one or more execution-related details using at least one encoder-decoder network.

16. An apparatus comprising:

at least one processing device comprising a processor coupled to a memory;

the at least one processing device being configured:

to obtain user-provided code and one or more items of information associated with the user-provided code, the one or more items of information comprising (i) one or more environment details related to the user-provided code, (ii) information pertaining to one or more compute resources associated with the user-provided code, and (iii) one or more user-provided tags, related to one or more user requirements, attributed to the user-provided code;

to determine code functionality information associated with the user-provided code and one or more execution-related details associated with the user-provided code by processing at least a portion of the user-provided code and at least a portion of the one or more items of information using one or more artificial intelligence techniques;

to generate one or more code segments, related to the at least a portion of the user-provided code, by processing the code functionality information and the one or more execution-related details using the one or more artificial intelligence techniques;

to execute at least a portion of the one or more code segments in at least one simulation environment; and

to perform one or more automated actions based at least in part on results from executing the at least a portion of the one or more code segments in the at least one simulation environment, wherein performing one or more automated actions comprises automatically replacing at least part of the user-provided code with at least a corresponding part of the one or more code segments.

17. The apparatus of claim 16 , wherein performing one or more automated actions comprises recommending, to the user, at least one of the one or more code segments based at least in part on the results from executing the at least a portion of the one or more code segments in the at least one simulation environment.

18. The apparatus of claim 16 , wherein obtaining one or more items of information associated with the user-provided code comprises obtaining a user-selected level of autonomy associated with the user-provided code.

19. The apparatus of claim 16 , wherein generating one or more code segments comprises processing the code functionality information and the one or more execution-related details using at least one encoder-decoder network.

20. The apparatus of claim 16 , wherein determining code functionality information associated with the user-provided code and one or more execution-related details associated with the user-provided code comprises processing the at least a portion of the user-provided code and the at least a portion of the one or more items of information using at least one encoder-decoder network.

Assignments (2)
CORRECTIVE ASSIGNMENT TO CORRECT THE THE ASSIGNEE NAME PREVIOUSLY RECORDED AT REEL: 063031 FRAME: 0579. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Mar 23, 2023
From: VARADHARAJAN, SRINIVAS; VASUDEV, RAKSHITH; HAN, YUNFAN
To: DELL PRODUCTS L.P.
Reel/Frame 063148/0273 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 20, 2023
From: VARADHARAJAN, SRINIVAS; VASUDEV, RAKSHITH; HAN, YUNFAN
To: DELL PRODUCTS L,P,
Reel/Frame 063031/0579 →
Continuity (1)
Related Publication 20240319966A1 · Sep 26, 2024
References Cited (18)
US 9946517B2 · Talby et al. · 2018 [cited by applicant]
US 10474559B2 · Moorthi et al. · 2019 [cited by applicant]
US 11238223B2 · Nuolf · 2022 [cited by examiner]
US 11442702B2 · Smith et al. · 2022 [cited by applicant]
US 11599356B1 · Kimball · 2023 [cited by examiner]
US 11809841B1 · Zhang · 2023 [cited by examiner]
US 12118350B1 · Mukherjee · 2024 [cited by examiner]
US 20160224453A1 · Wang · 2016 [cited by examiner]
US 20180039566A1 · Luenstroth · 2018 [cited by examiner]
US 20190079734A1 · Kadam · 2019 [cited by examiner]
US 20200019493A1 · Ramakrishna · 2020 [cited by examiner]
US 20210132915A1 · Ivankovic · 2021 [cited by examiner]
US 20210182039A1 · Cappello · 2021 [cited by examiner]
US 20210192321A1 · Zhang · 2021 [cited by examiner]
US 20210374561A1 · Krishnamoorthy · 2021 [cited by examiner]
US 20220050769A1 · Huang · 2022 [cited by examiner]
US 20220244937A1 · Prasad · 2022 [cited by examiner]
US 20240184691A1 · Murchison · 2024 [cited by examiner]