soloshun/agentic-recovery-and-incident-response

GitHub: soloshun/agentic-recovery-and-incident-response

基于Pydantic AI的最小化概念验证,展示数据与AI流水线中受防护的代理式自愈与事件响应循环架构。

Stars: 0 | Forks: 0

# 代理式恢复与事件响应 这是论文 **“Agentic Self-Healing for Data & AI Pipelines: An Affordable Vendor-Agnostic Architecture using Open-Source Software.”** 的一个特意精简的概念验证。 该论文提出了一个受防护的恢复循环: 本仓库将这一思想浓缩为一个可供审查的 Python 文件。它并非一个生产级框架,也不会连接到任何生产基础设施。 ## 示例展示的内容 - **类型化的事件与诊断契约**(使用 Pydantic)。 - **确定性优先于生成式:** 已知特征会绕过模型。 - **代理式诊断:** 模糊证据会传递给 Pydantic AI 代理。 - **白名单修复:** 代理仅能提议 `retry_task` 或 `escalate`。 - **基于风险的审批:** 确定性策略(而非代理)负责对风险进行分类,且只有低风险的尝试才会被自动批准。 - **受防护的执行:** 修复操作由受限的函数表示,而非拥有任意的 shell 访问权限。 - **验证与学习:** 结果会被检查,并作为类型化的事件记录在本地进程内存中。 默认运行使用的是 Pydantic AI 的离线 `TestModel`,因此它是确定性的、免费的,且不需要 API key。这使得该概念验证易于审查,同时保留了真实模型也会使用的结构化代理边界。 ## 使用 UV 运行 ``` uv sync uv run python main.py ``` 预期生命周期: ``` DETECT incident received DIAGNOSE ambiguous incident sent to the Pydantic AI agent APPROVE auto-approved REMEDIATE simulated orchestrator.retry_task() VERIFY recovered LEARN episode recorded ``` ## 使用 OpenRouter 进行测试 OpenRouter 支持已默认安装。创建一个 `.env` 文件: ``` OPENROUTER_API_KEY=your-key MODEL=openrouter:deepseek/deepseek-v4-flash ``` 然后运行: ``` uv run python main.py ``` 你可以将模型标识符替换为任何支持结构化输出的 OpenRouter 模型。`openrouter:` 前缀会指示 Pydantic AI 使用 OpenRouter,而 `OPENROUTER_API_KEY` 则提供凭证。`.env` 已从 Git 中排除。 要恢复到免费的离线演示,请移除或注释掉 `MODEL`;API key 可以保留在 `.env` 中。 该架构始终保持供应商无关性(vendor-agnostic):更改模型并不会改变事件、策略、审批、执行或验证契约。 ## 安全边界 此代码模拟了修复过程。生产环境的实现应当将执行置于经过身份验证的 API 或持久化工作流之后,强制执行速率和爆炸半径限制,要求对重要操作进行人工审批,对敏感证据进行脱敏处理,保留不可变的审计轨迹,并在证据不充分时进行上报。 如需了解包含配置、事件内存、提供商接口、CLI 命令和实战示例的更深入实现,请参阅 **Lumis SDK**。
标签:AI代理, Pydantic, 事故响应, 概念验证, 自动化恢复, 逆向工具