Skip to content

Latest commit

 

History

82 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

IaCGen

IaCGen is a LLM improvement framework in Infrastructure-as-Code (IaC) generation.

DPIaC-Eval is the first deployablility-focused IaC benchmark that focuses on CloudFormation and AWS.

Check the paper at FSE 2026.

Getting Started

  1. Download the project
  2. Install AWS CLI and setup credentials
  3. Download required libraries in the requirement.txt
  4. *Obtain the following LLM model inference API keys as appropriate. Currently IaCGen support all models from the following three providers:
  1. Add a .env file under the IaCGen directory with your own API key:
GEMIN_API_KEY=your_actual_gemini_api_key_here
CHATGPT_API_KEY=your_actual_gpt_api_key_here
CLAUDE_API_KEY=your_actual_claude_api_key_here
DEEPSEEK_API_KEY=your_actual_deepseek_api_key_here
  1. Follow the instructions in Code/README.md to execute the IaCGen.

Project Structure

  • You can check our benchmark (DPIaC-Eval) dataset under the Data folder.
  • You can check the code for IaCGen framework under the Code folder.
  • Note: Please check the README.md file in each of the folders for a detailed description.
  • Note: You can simply download the project and run the main.py in Code folder to test IaCGen. You can edit the variables in the last part of the Python file to control how you want to use IaCGen, such as the type of model and which IaC problem/s you want to test with.

License

This project is released under Apache License 2.0. For commercial collaborations, enterprise use, or licensing inquiries, please contact (tianyi2332@163.com).

Contribution

Submit a PR if you want to contribute to the project.

If find bugs, issues, or have suggestions, please share them via GitHub Issues.

Acknowledgments

IaC-Eval

About

LLM framework for infrastructure as code generation & CloudFormation benchmark.

Resources

Stars

8 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages