pritamwankhede9224/ai-chatops-assistant

GitHub: pritamwankhede9224/ai-chatops-assistant

一个集成 Slack 与 OpenAI 的 AI ChatOps 助手,通过 FastAPI 后端自动化处理 DevOps 生产事故的智能分析与 RCA 生成。

Stars: 0 | Forks: 0

# 🚨 AI 驱动的 Incident ChatOps 助手 ![Python](https://img.shields.io/badge/Python-3.11-blue) ![FastAPI](https://img.shields.io/badge/FastAPI-Backend-green) ![OpenAI](https://img.shields.io/badge/OpenAI-AI-orange) ![Slack](https://img.shields.io/badge/Slack-ChatOps-purple) ![Status](https://img.shields.io/badge/Project-Active-success) 本项目旨在使用 AI 驱动的 ChatOps 自动化**首次响应运营工作流**。 助手直接从 Slack 接收生产 incident,执行 AI 驱动的 incident 分析,并响应以下内容: - 严重性评估 - 根本原因分析 (RCA) - 影响分析 - 推荐修复方案 - 预防策略 所有这一切都在实时进行。 # ⚡ 本项目解决的问题 现代 DevOps 和 Cloud 团队面临以下问题: - 告警疲劳 - Incident 分拣缓慢 - 重复的运维调试 - 宕机期间沟通分散 本项目作为一个集成到 Slack 工作流中的 **AI 运维助手**,旨在加速 incident 的理解和响应。 无需再手动: - 检查日志 - 搜索仪表板 - 询问多个团队 - 起草 RCA 工程师只需触发: ``` /analyze Production API returning intermittent 503 errors ``` 即可直接在 Slack 内接收 AI 辅助的运维分析。 # 🧠 核心工作流 ``` Slack Slash Command ↓ FastAPI Backend ↓ Async Background Processing ↓ OpenAI API Analysis ↓ Slack Incident Response ``` # 🔥 实时工作流示例 ## 1️⃣ 工程师在 Slack 中报告问题 ``` /analyze EC2 instances failing health checks after deployment ``` ## 2️⃣ Bot 立即确认 incident ``` 🚨 NEW INCIDENT RECEIVED 👤 Triggered By: pritam9224 📝 Incident Details: EC2 instances failing health checks after deployment 🤖 AI analysis in progress... ``` ## 3️⃣ 自动生成 AI 运维分析 ``` 🚨 AI INCIDENT ANALYSIS REPORT Severity: HIGH Root Cause: Deployment introduced unhealthy application instances causing failed health checks. Impact: Traffic routing instability and intermittent downtime observed. Recommended Fix: - Roll back latest deployment - Verify target group health checks - Inspect application logs - Validate environment variables Prevention Strategy: - Implement canary deployments - Add deployment health validation - Improve monitoring and rollback automation ``` # 🚀 功能 ✅ Slack Slash Command 集成 ✅ AI 驱动的 Incident 分析 ✅ 异步后台处理 ✅ 实时 ChatOps 工作流 ✅ FastAPI Backend ✅ OpenAI API 集成 ✅ Slack Webhook 自动化 ✅ 运维 RCA 生成 ✅ 严重性评估 ✅ Cloud/DevOps Incident 处理 ✅ 多步骤 Incident 工作流 ✅ 生产级运维设计 # 🛠 技术栈 | 技术 | 用途 | | ---------------------- | --------------------------- | | Python | Backend 开发 | | FastAPI | API 框架 | | OpenAI API | AI Incident 分析 | | Slack API | ChatOps 集成 | | Slack Webhooks | 自动化消息推送 | | ngrok | 用于本地开发的公共 Tunnel | | Uvicorn | ASGI 服务器 | | 异步后台任务 | 非阻塞处理 | # ⚙️ 项目架构 ``` ┌──────────────────────┐ │ Slack User │ └──────────┬───────────┘ │ ▼ ┌──────────────────────┐ │ Slack Slash Command │ └──────────┬───────────┘ │ ▼ ┌──────────────────────┐ │ FastAPI Backend │ └──────────┬───────────┘ │ ▼ ┌──────────────────────┐ │ Async Background Job │ └──────────┬───────────┘ │ ▼ ┌──────────────────────┐ │ OpenAI API │ └──────────┬───────────┘ │ ▼ ┌──────────────────────┐ │ Slack AI RCA Report │ └──────────────────────┘ ``` # 📂 项目结构 ``` ai-chatops-assistant/ │ ├── chatops_bot.py ├── requirements.txt ├── .gitignore ├── README.md │ ├── System Workflow/ ├── screenshots/ ├── architecture/ └── sample_logs/ ``` # 🔐 安全考量 诸如 API key 之类的敏感凭证使用以下方式进行安全存储: ``` .env ``` `.env` 文件已通过以下配置从版本控制中排除: ``` .gitignore ``` # 🧪 本地运行项目 ## 1️⃣ 克隆仓库 ``` git clone https://github.com/pritamwankhede9224/ai-chatops-assistant.git ``` ## 2️⃣ 安装依赖 ``` pip install -r requirements.txt ``` ## 3️⃣ 配置环境变量 创建一个 `.env` 文件: ``` OPENAI_API_KEY=your_openai_api_key SLACK_WEBHOOK_URL=your_slack_webhook_url ``` ## 4️⃣ 运行 FastAPI 服务器 ``` python -m uvicorn chatops_bot:app --reload ``` ## 5️⃣ 启动 ngrok Tunnel ``` ngrok http 8000 ``` ## 6️⃣ 配置 Slack Slash Command 示例: ``` /analyze ``` Request URL: ``` https://your-ngrok-url/slack/analyze ``` # 🧠 实践的工程概念 本项目有助于巩固对以下方面的实际理解: * API 集成 * Webhook * ChatOps 工作流 * 异步后台处理 * AI 编排 * Incident 响应自动化 * Slack bot 集成 * 运维工具 * Cloud/DevOps 工作流设计 * 后台任务执行 # 💡 核心要点 构建本项目帮助我更好地理解了: - 异步运维工作流 - Slack Webhook 集成 - AI 编排模式 - 实时 Incident 自动化 - 后端 API 生命周期处理 - 实用的 ChatOps 架构 # ⚠️ 当前局限性 - 本地开发目前使用 ngrok 隧道 - AI 响应依赖于外部 API 的延迟 - 尚未实现持久的 Incident 存储 - 多用户上下文处理有限 # 🔮 未来增强功能 * AWS CloudWatch 集成 * 创建 ServiceNow/Jira Ticket * 多云 Incident 支持 * AI 严重性评分引擎 * Incident 记忆与历史上下文 * 实时监控集成 * Kubernetes 告警处理 * PagerDuty 集成 * 多渠道通知 * AI 驱动的自动修复 ## 🏗️ 架构概述 AI ChatOps 助手通过基于 Slack 的运维工作流,自动化 Incident 分拣和根本原因分析。 ### 高层架构 ![架构图](https://static.pigsec.cn/wp-content/uploads/repos/2026/06/161d0abf79120538.png) ### 工作流 1. 工程师使用 Slack 的 `/analyze` 命令提交 Incident。 2. Slack 通过安全的 webhook endpoint 将请求发送到 FastAPI backend。 3. FastAPI 验证请求并启动异步后台任务。 4. 使用 OpenAI GPT 模型分析 Incident 详情。 5. AI 生成: * 严重性评估 * 根本原因分析 (RCA) * 影响分析 * 修复步骤 * 预防建议 6. 生成的 Incident 报告通过 webhook 传送回 Slack。 7. 工程师直接在 Slack 内接收结构化的运维响应。 ### 核心组件 | 组件 | 用途 | | ---------------- | ------------------------------ | | Slack | 用户交互与 ChatOps 界面 | | FastAPI | 后端 API 服务 | | OpenAI API | AI 驱动的 Incident 分析 | | 后台任务 | 异步处理 | | Slack Webhooks | 响应交付 | | Python | 核心应用逻辑 | | ngrok | 本地开发隧道 | # 📸 截图与实时工作流 ## 🚨 Incident 触发工作流 工程师使用 `/analyze` slash command 直接从 Slack 触发 Incident 分析。 ![Incident 触发](https://static.pigsec.cn/wp-content/uploads/repos/2026/06/eb0f57b733120544.png) ## 🤖 AI Incident 分析响应 AI 助手自动执行运维分析并生成: - 严重性评估 - 根本原因分析 - 影响摘要 - 推荐修复方案 - 预防策略 所有内容直接在 Slack 内呈现。 ![AI Incident 分析](https://static.pigsec.cn/wp-content/uploads/repos/2026/06/ac5110765e120550.png) ## ⚙️ FastAPI Backend 文档 交互式 FastAPI Swagger 文档,公开了 ChatOps 助手使用的运维 endpoint。 ![FastAPI 文档](https://static.pigsec.cn/wp-content/uploads/repos/2026/06/4103b5778b120559.png) # 🤝 本项目为何重要 本项目无意取代工程师。 它旨在通过以下方式协助运维团队: * 减少重复的调查工作 * 加速 Incident 分拣 * 提高运维可见性 * 实现更快的首次响应工作流 重点是将 AI 实际集成到真实的运维系统中——而不仅仅是构建另一个聊天机器人。 ## 🚀 即将推出的未来增强功能 计划在下一版本中推出的改进: * [ ] Incident 严重性分类 (P1/P2/P3/P4) * [ ] 日志文件上传与分析 * [ ] 历史 Incident 数据库 * [ ] Incident 趋势仪表板 * [ ] AWS CloudWatch 集成 * [ ] Azure Monitor 集成 * [ ] 自动创建 Ticket * [ ] 多 LLM 支持 * [ ] 特定于云的 RCA 模板 * [ ] 基于知识库的 Incident 分析 # 👨‍💻 作者 ### Pritam Wankhede 专注于以下领域的 Cloud / DevOps 工程师: * AWS * Azure * CI/CD * 基础设施自动化 * AI 集成的运维工作流
标签:AV绕过, ChatOps, FastAPI, OpenAI, Petitpotam, 事故响应, 内存规避, 智能运维, 根因分析, 逆向工具