whonikz/sre-oncall-copilot
GitHub: whonikz/sre-oncall-copilot
基于本地 RAG 架构的运维事件响应助手,帮助 on-call 工程师从团队 runbook 中快速检索并生成故障修复方案。
Stars: 0 | Forks: 0
# SRE On-call Copilot
一款面向 on-call 工程师的本地、基于 RAG 的突发事件响应助手。向它询问生产突发事件,它会检索相关的 runbook,并基于您自己的文档生成简明的修复计划。完全在本地运行,无需任何 API 密钥。
## 技术栈
- **LangGraph** — 负责编排工作流(检索 -> 生成)
- **Ollama** — 本地推理:llama3.1:8b(对话)+ nomic-embed-text(embedding)
- **Qdrant** — 用于对 runbook 进行语义搜索的向量数据库
## 工作原理
1. **摄入** — 将 markdown 格式的 runbook 拆分为多个部分,进行 embedding,并存储在 Qdrant 中。
2. **检索** — 对用户的问题进行 embedding,并通过余弦相似度找到最接近的 runbook 文本块。
3. **生成** — 将检索到的上下文传递给 LLM,由其编写有事实依据的回答。
## 设置
```
ollama pull llama3.1:8b
ollama pull nomic-embed-text
docker run -d -p 6333:6333 --name qdrant qdrant/qdrant
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
```
## 用法
```
PYTHONPATH=src python3 -m copilot.cli ingest
PYTHONPATH=src python3 -m copilot.cli ask "our payments service is very slow"
```
## 项目结构
```
src/copilot/
llm.py Ollama wrapper (embed + chat)
vectorstore.py Qdrant wrapper
ingest.py load and chunk runbooks
graph.py LangGraph workflow
cli.py command-line interface
data/runbooks/ the knowledge base
```
标签:AI风险缓解, LangGraph, LLM评估, Ollama, Qdrant, RAG, SRE, 偏差过滤, 本地知识库, 请求拦截, 运维, 逆向工具