aiac

用大白话描述云资源,自动生成 Terraform 等 IaC 代码

aiac 是一个用 Go 编写的命令行工具,旨在通过人工智能自动生成基础设施即代码(IaC)文件。它解决了开发者和运维人员在编写 Terraform、Pulumi、CloudFormation 等 IaC 配置时耗时且易出错的问题。用户只需用自然语言描述所需的基础设施,aiac 就会调用后端大语言模型(如 OpenAI、Amazon Bedrock、Ollama 等)生成对应的代码。核心能力包括:支持多种 IaC 框架和云提供商、可自定义模型参数、支持交互式聊天模式、能生成代码并附带解释。它简化了云资源管理的入门门槛,提高了 IaC 编写效率,尤其适合快速原型设计和学习场景。

开源 free 对话助手
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 3788
维护状态 低维护
是否开源 是
定价模式 free

项目数据

分类对话助手
开发团队gofireflyio
所属国家
官网地址
定价模式free
价格说明开源项目,Apache-2.0许可证,可免费使用和自行部署。
访问状态
是否开源是
开源协议Apache-2.0
主要语言Go
技术栈/模型ai,amazon-bedrock,chatgpt,iac,llms,ollama,openai,pulumi,terraform
GitHub 星标★ 3788
30天Star增速
HF 下载量
上线时间2022-12-07 00:00:00
最近更新2026-09-22 00:00:00
维护状态低维护
中文支持
访问方式
移动端支持
综合评分
收录时间2026-08-09
浏览次数6

使用教程

难度:入门 约 10 分钟 部署方式:命令行工具 8 步

环境要求

  • Homebrew(macOS/Linux,使用 brew 安装时需要)
  • Go 环境(使用 go install 或从源码构建时需要)
  • Docker(使用容器方式运行 aiac 时需要)
  • 一个可用的 LLM 后端:OpenAI API Key、Amazon Bedrock 或本地 Ollama

安装与启动步骤

  1. 1用 Homebrew 安装

    在 macOS/Linux 上通过官方 tap 安装 aiac 的预编译版本,最省事。

    brew tap gofireflyio/aiac https://github.com/gofireflyio/aiac
    brew install aiac
  2. 2用 go install 安装

    已装好 Go 环境的话,可直接安装 v5 最新版本到 GOPATH/bin。

    go install github.com/gofireflyio/aiac/v5@latest
  3. 3从源码构建

    克隆仓库后在项目根目录执行 go build,生成 aiac 可执行文件。

    git clone https://github.com/gofireflyio/aiac.git
    cd aiac
    go build
  4. 4准备 Docker 镜像

    如果倾向容器方式,先拉取官方镜像,后续用 docker run 调用。

    docker pull ghcr.io/gofireflyio/aiac
  5. 5创建配置文件

    在 ~/.config/aiac/aiac.toml 定义 default_backend 和一个带有 type、api_key 的 backend。

  6. 6生成 IaC 代码

    用自然语言描述所需基础设施,aiac 会输出对应代码;可用 -b 指定后端名。

    aiac terraform for ec2
  7. 7用 Docker 运行

    容器方式需把宿主机的配置文件挂载进去,其余用法与命令行完全一致。

    docker run -it -v ~/.config/aiac/aiac.toml:~/.config/aiac/aiac.toml ghcr.io/gofireflyio/aiac terraform for ec2
  8. 8列出可用模型

    该命令会直接请求所选后端 API,返回其支持的模型列表,便于确认配置。

    aiac --list-models

关键配置

配置项必填说明示例
default_backend否未显式指定后端时默认使用的后端名称official_openai
backends..type是后端类型,决定使用哪家 LLM 提供方openai
backends..api_key是OpenAI 等提供方的 API 密钥sk-xxxxxxxx
backends..url否自建或本地 LLM 服务的接口地址(如 Ollama)http://localhost:11434/api
backends..default_model否该后端默认使用的模型名称mistral:latest

如何确认成功

运行 aiac --list-models,若能返回所选后端支持的模型列表,说明配置成功。

常见问题

Q:升级到 v5 后 --api-key 等参数报错怎么办?

A:v5 起后端只能通过 TOML 配置文件配置,provider 专属旗标(--api-key、--aws-profile 等)及其环境变量已不再接受,请改写到配置文件里。

Q:-b 后面应该填什么?

A:填配置文件中自定义的后端名称(如 my_local_llm),而不是 openai、bedrock、ollama 这类提供方类型名。

Q:生成时报模型不可用?

A:v5 只支持 chat 模型,且不会校验模型是否存在。--list-models 可能列出非 chat 模型,选中后会由提供方 API 直接返回错误。

Q:配置文件必须放在固定位置吗?

A:默认读取 ${XDG_CONFIG_HOME}/aiac/aiac.toml(通常为 ~/.config/aiac/aiac.toml),也可用 --config 或 -c 指定其他路径。

注意事项

  • v5 起不再硬编码任何模型(包括默认模型),也不会校验所选模型是否真实存在。
  • 可以为同一提供方配置多个后端,例如区分 staging 与 production 环境。
  • 使用 Docker 方式时必须把宿主机上的 aiac.toml 挂载到容器内对应路径。

核心亮点

  • 支持 OpenAI、Bedrock、Ollama 等多种 LLM 后端,灵活适配不同环境
  • 覆盖 Terraform、Pulumi、CloudFormation 等主流 IaC 框架,实用性强
  • 提供交互式聊天模式,可迭代调整生成结果,提升准确性

不足之处

  • 生成代码的准确性依赖所选模型,复杂场景下可能需要人工修正
  • 文档/社区待观察

适用场景

  • 快速生成 Terraform 配置用于云资源原型验证
  • 为不熟悉 IaC 语法的开发者提供学习辅助
  • 在本地通过 Ollama 离线生成 IaC 代码,保障数据隐私

替代项目

tf-generator、gpt-terraform、infragen

项目介绍

aiac 是编程开发领域的开源项目,由 gofireflyio 开发,2022 年首次发布。

在全站 13,090 个收录项目中,它的 GitHub 星标数(3,788)位列前 30%,在编程开发分类的 503 个项目里位列前 13%。

项目已超过三个月没有代码更新,维护节奏明显放缓,最近一次代码更新于 2026-09-22。Apache-2.0许可证,可免费使用和自行部署。

它主要面向的使用场景是:快速生成Terraform配置用于云资源原型验证。同类可对比的替代方案包括 tf-generator、gpt-terraform、infragen。

上一篇:development-plugin-for-avalonia

下一篇:demo2apk

同类项目推荐

bolt.new 开源

想到啥说啥,网页应用当场生成直接能用

Prompt, run, edit, and deploy full-stack web applications. -- bolt.new -- Help Cente···

★ 16557 2026-08-09
fuzz4all 开源

用大模型自动生成测试输入,发现各种软件漏洞

️Fuzz4All: Universal Fuzzing with Large Language Models

★ 338 2026-08-09
superpowers-zh 开源

全套 AI 编程神技汉化好了,照着用就行。

AI 编程超能力 · 中文增强版 — superpowers(250k+ ⭐)完整汉化 + 4 个中国原创 skills···

★ 8188 2026-08-09
crystal 开源

多个 AI 同时写不同功能,互不干扰齐头并进。

(Crystal is now Nimbalyst) Run multiple Codex and Claude Code AI sessions in paralle···

★ 3121 2026-08-09