saiabhi26/ai-incident-response-agent
GitHub: saiabhi26/ai-incident-response-agent
基于 LangGraph 和 RAG 的 AI 事件响应 Agent,帮助工程团队分析生产日志、检索操作手册并辅助根因诊断和事后复盘。
Stars: 0 | Forks: 0
# 🚨 AI 事件响应 Agent
一个生产就绪的 AI Agent,它通过使用 **LangGraph orchestration + Retrieval Augmented Generation (RAG)** 分析服务日志和操作手册文档,帮助工程团队调查和响应生产事件。
## 🌟 为什么会有这个项目
在事件发生期间,工程师需要花费大量宝贵的时间搜索日志、仪表板和操作手册,以了解出了什么问题。
该系统充当**事件响应的 AI 副驾驶**,帮助减少诊断时间并提高故障排除的准确性。
该 Agent 可以:
• 分析服务日志和错误跟踪
• 检索相关的操作手册文档
• 建议可能的根本原因
• 推荐后续的调试步骤
• 跨会话保留对话记忆
## 🏗️ 架构概述
高级工作流程:
用户查询或日志
➡️ LangGraph orchestration
➡️ RAG pipeline 从 pgvector 检索相关的日志和操作手册
➡️ 带有工具和记忆的 LLM 推理
➡️ 结构化的事件响应
核心技术栈:
• **FastAPI** 用于异步 API 后端
• **LangGraph** 用于 Agent orchestration
• **PostgreSQL + pgvector** 用于向量搜索
• **OpenAI models** 用于推理和 embeddings
• **Prometheus + Grafana** 用于监控
• **Docker** 用于容器化
• **AWS ready deployment**
## 🤖 核心功能
### 🔎 事件调查 Agent
• 上传日志或粘贴事件详情
• 跨操作手册和历史事件进行语义搜索
• 根本原因分析建议
• 推荐的调试步骤
• 每个用户的对话记忆
### 🧠 Retrieval Augmented Generation Pipeline
该项目使用完整的 RAG pipeline 将响应建立在实际的工程知识之上。
• 日志摄取和分块 pipeline
• 针对操作手册的文档摄取 pipeline
• 使用 OpenAI models 生成 embeddings
• 使用 PostgreSQL + pgvector 进行向量相似度搜索
• 将上下文注入 LLM prompts 以实现有根据的推理
### ⚙️ 生产级后端
• FastAPI 异步 REST API
• JWT 身份验证和会话管理
• 速率限制和输入验证
• 带有请求上下文的结构化日志记录
• 支持流式响应
### 📊 可观测性与评估
• Prometheus 指标 + Grafana 仪表板
• Langfuse LLM tracing
• 自动化评估框架
• 包含成功指标的 JSON 报告
### ⚡ 性能与可靠性
• Docker + Docker Compose 设置
• Redis 缓存支持
• LLM 调用的自动重试逻辑
• 异步数据库连接池
## 💡 典型用例
示例查询:
• “这是来自支付服务的日志。为什么 checkout 会失败?”
• “我们看到反复出现 503 错误。可能出了什么问题?”
• “总结此事件并建议后续步骤。”
该 Agent 会检索相关的操作手册部分,并生成结构化的故障排除指南。
## 📂 项目结构
```
app/
├── api/ # REST API endpoints (auth + chat)
├── core/langgraph/ # LangGraph agent workflow & tools
├── services/
│ ├── database.py # PostgreSQL + pgvector integration
│ └── llm.py # LLM + embedding service
├── prompts/ # System prompts & RAG instructions
scripts/ # Log + runbook ingestion pipeline (RAG indexing)
evals/ # Evaluation framework for agent accuracy
prometheus/ # Metrics configuration
grafana/ # Monitoring dashboards
```
## 🚀 入门指南
### 前置条件
• Python 3.13
• PostgreSQL
• Docker + Docker Compose
• OpenAI API Key
### 🔧 本地设置
Clone 该仓库
```
git clone https://github.com/saiabhi26/ai-incident-response-agent.git
cd ai-incident-response-agent
```
安装依赖项
```
uv sync
```
创建环境变量文件
```
cp env.example env.development
```
添加所需的变量
```
OPENAI_API_KEY=your_key
POSTGRES_HOST=localhost
POSTGRES_DB=incident_agent
SECRET_KEY=your_secret
```
本地运行
```
make dev
```
Swagger 文档访问地址
http://localhost:8000/docs
## 🐳 使用 Docker 运行
```
make docker-build-env ENV=development
make docker-run-env ENV=development
```
监控仪表板
Prometheus → http://localhost:9090
Grafana → http://localhost:3000
## 🧪 评估
运行自动化评估
```
make eval-quick ENV=development
```
生成的报告位于:
```
evals/reports/
```
指标包括成功率和响应质量。
## 🔮 未来改进
• 云日志摄取集成
• Slack 和电子邮件告警支持
• 更大的评估数据集
• 高级多步 Agent workflows
## 🙌 鸣谢
使用生产级的 FastAPI + LangGraph 模板构建,并扩展了真实世界的事件响应用例。
标签:AI助手, AV绕过, FastAPI, LangGraph, LLMOps, RAG, 搜索引擎查询, 智能运维, 测试用例, 自定义请求头, 请求拦截, 逆向工具