AWS人工智能助手
基于web的AI助手,用于使用自然语言查询管理和理解AWS环境。
特性
- 🤖 由OpenAI支持的自然语言界面
- 📊 AWS资源探索和查询
- 🎨 架构图生成
- 💰 成本分析和预测
- 📝 Markdown和代码渲染
- 🔄 多账户AWS支持 -在多个AWS帐户之间切换
- 🐳 Docker化,易于部署
建筑
- 前端:React 18+TypeScript+顺风CSS
- 后端:Node.js+Express+TypeScript
- 人工智能:OpenAI API集成
- AWS集成:MCP(模型上下文协议)服务器
- 部署:Docker+Docker组合
先决条件
- Docker和Docker Compose
- OpenAI API密钥
- AWS凭据(访问密钥和密钥)
- Node.js 20+(用于本地开发)
快速开始
- 克隆存储库并复制环境模板:
cp .env.example .env- 编辑
.env并添加您的凭据:
OPENAI_API_KEY=your_openai_api_key_here
AWS_ACCESS_KEY_ID=your_aws_access_key
AWS_SECRET_ACCESS_KEY=your_aws_secret_key
AWS_REGION=us-east-1- 启动应用程序:
docker-compose up --build- 打开浏览器
http://localhost:3000
发展
本地开发(无Docker)
后端
cd backend
npm install
npm run dev前端
cd frontend
npm install
npm run dev多账户支持
配置多个AWS帐户并通过UI在它们之间切换:
# Set the default account name
AWS_ACCOUNT=production
# Define multiple accounts with custom names
AWS_PRODUCTION_ACCESS_KEY_ID=your_production_key
AWS_PRODUCTION_SECRET_ACCESS_KEY=your_production_secret
AWS_PRODUCTION_REGION=us-east-1
AWS_STAGING_ACCESS_KEY_ID=your_staging_key
AWS_STAGING_SECRET_ACCESS_KEY=your_staging_secret
AWS_STAGING_REGION=us-east-1
AWS_DEV_ACCESS_KEY_ID=your_dev_key
AWS_DEV_SECRET_ACCESS_KEY=your_dev_secret
AWS_DEV_REGION=us-west-2帐户选择器出现在应用程序的右上角。所有AWS操作都将使用当前选定帐户的凭据。
环境变量
| 变量 | 描述 | 必填 |
|---|---|---|
| OPENAI_API_KEY | 您的OPENAI API密钥 | 是 |
| AWS_ACCOUNT | 默认AWS帐户名 | 是 |
| AWS{名称}_ACCESS_KEY_ID | 帐户的AWS访问密钥 | 是(每个帐户) |
| AWS_{NAME}_SECRET_ACCESS_KEY | 帐户的AWS密钥 | 是(每个帐户) |
| AWS_{NAME}\_REGION | 帐户的AWS区域 | 否(默认值:us-east-1) |
| PORT | 后端服务器端口 | 否(默认值:3001) |
项目结构
aws-ai-assistant/
├── frontend/ # React frontend
├── backend/ # Express backend
├── docker/ # Docker configurations
├── docker-compose.yml
├── .env.example
└── README.md可用模块
1.聊天界面
与AWS资源交互的自然语言查询。
2.资源浏览器
使用AWS CLI命令查询和浏览AWS资源。
3.图表生成器
从您的AWS基础架构生成架构图。
4.成本分析
分析成本、查看明细并生成成本报告。
使用的MCP服务器
aws-core-mcp-server:AWS核心运营、文档、成本分析aws-diagram-mcp-server:架构图生成firecrawl-mcp-server:网络抓取以获取更多上下文
许可证
麻省理工学院
