2

Infracopilot, a Conversational Infrastructure-as-Code Editor

 1 year ago
source link: https://www.infoq.com/news/2023/05/Infracopilot-conversation-editor/?itm_source=infoq&itm_medium=popular_widget&itm_campaign=popular_content_list&itm_content=
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

Infracopilot, a Conversational Infrastructure-as-Code Editor

May 31, 2023 1 min read

Klotho announced InfraCopilot, an infrastructure-as-Code (IaC) editor with natural language processing capabilities.

The user can chat with InfraCopilot describing their infrastructure needs and it translates these ideas into a low-level architecture. Users can then iterate with incremental high-level and low-level architecture changes.The scope of InfraCopilot is to simplify the design and management of the infrastructure providing a simple interface to be more accessible for developers with different levels of expertise.

Five parts compose the InfraCopilot architecture- the core of the project is the open-source Intelligence Klotho Engine, the other parts are: InfraCopilot API/Orchestrator, Intent Parser, Visualization Engine, and Discord Bot. The user interacts with the Discord Bot that forwards the query to the InfraCopilot service. The user intent, extracted by the large language model (LLM), is sent to the Intent Corrector which confirms and corrects the intents and converts them into a JSON structure. The corrected user intent is then expanded by the Klotho Engine into a validated architecture. The Klotho engine generates a multi-level infrastructure with all the low-level components like VPCs, subnets, security groups, and IAM policies. At the end, the visualizer service shows the user the high-level infrastructure diagrams based on what the user asked. The generated and deployable IaC can be synced back directly to GitHub.

2InfraCopilot-Diagram-Frame-162-scaled-1-1685163077207.jpg

                              InfraCopilot architecture

InfraCopilot uses the large language model(LLM) only to interpret the user intent and not to generate the IaC template. The Klotho engine handles this task because it is deterministic and ensures repeatable, explainable, and reliable infrastructure.

InfraCopilot and Klotho are both built on the Klotho Engine for reasoning about architectures and generating Infrastructure-as-Code (IaC). Still, their focuses are complementary: Klotho is focused on the code-first static analysis approach, it extracts architectural insights from the application code and creates an IaC. On the other hand, InfraCopilot is focused on the infrastructure and architecture avoiding the developer code.

1infra-1685163077207.jpg

                          Example of infrastructure yaml and its representation

At the time of writing, the only cloud platform supported is AWS in early access. Azure and Google Cloud support will come.

About the Author

Claudio Masolo

Claudio is a cloud engineer. In his spare time, he likes running, reading, and playing old video games.


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK