Autonomous Cloud Application Configuration with RAG and Knowledge Graph
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Configuring applications in cloud-computing environments is time- and resource-intensive due to their complexity and numerous configuration settings, often requiring significant human effort and expertise, and existing generative artificial intelligence (GAI) models lack domain-specific knowledge and are not up-to-date.
Innovation Solution
An application configuration system using retrieval augmented generation (RAG) with a large language model (LLM) and knowledge graph to generate domain-specific configuration code based on enterprise requirements, mitigating knowledge gaps and ensuring up-to-date configurations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If manual configuration methods are used for cloud-based applications, then configuration accuracy can be maintained through human expertise, but the process becomes time- and resource-intensive
Solution Approach 1:
The system enables autonomous configuration where the application automatically retrieves requirements from documents, generates configuration settings, and updates itself without human intervention. The configuration manager orchestrates this self-service process by querying the database for requirements, generating prompts for the LLM, and applying the generated configuration directly to the application.
Solution Approach 2:
The patent replaces manual human configuration work with an automated system comprising a large language model (LLM) and configuration manager. The LLM generates configuration settings based on retrieved requirements, substituting the mechanical human effort with an intelligent automated system that processes requirements documents and produces configuration outputs.
2Extent of automation
If existing GAI models are used for configuration, then automation can be achieved, but domain-specific knowledge and up-to-date information are lacking
Solution Approach 1:
The system introduces a configuration manager as an intermediary between the LLM and the application configuration process. This intermediary retrieves domain-specific requirements from the database, formulates appropriate prompts, and validates the LLM's output against stored requirements, ensuring both automation and knowledge accuracy.
Solution Approach 2:
The system performs preliminary retrieval of domain-specific requirements and stores them in the database before the configuration process begins. This preliminary action ensures that when the LLM generates configuration settings, it has access to up-to-date, domain-specific information, combining automation with reliable knowledge.
3Adaptability or versatility
If comprehensive configuration settings are implemented to meet diverse enterprise needs, then adaptability is improved, but system complexity increases
Solution Approach 1:
The system segments the configuration process into distinct components: requirement retrieval, prompt generation, LLM processing, and configuration application. Each component handles a specific aspect of the configuration task, managing complexity through modularization while maintaining adaptability to diverse enterprise requirements.
Solution Approach 2:
The system dynamically adapts the configuration process to each enterprise's specific needs by retrieving relevant requirements from the database and generating customized prompts for the LLM. This dynamic approach allows the system to handle diverse configuration scenarios without requiring a static, overly complex framework.
Data Source
AI summary
Methods, systems, and computer-readable storage media for determining a set of queries corresponding to a set of configuration settings of an application, for each query in the set of queries, querying a database to return a set of chunks, each chunk in each set of chunks including a portion of a requirements document, providing a set of prompts, each prompt corresponding to a query in the set of queries and including a respective set of chunks as context, receiving, from a large language model (LLM), a set of responses, each response corresponding to a prompt in the set of prompts, querying a knowledge graph based on the set of responses to provide a set of knowledge graph results, providing a configuration file using the set of responses and the set of knowledge graph results, and configuring the application using the configuration file.


