d3v07/boundedops

GitHub: d3v07/boundedops

BoundedOps 是一个基于 Qwen 模型的多智能体事件响应系统,通过 ARCL 权限契约和工具调用代理机制,确保 AI 智能体在运维场景中的每一步操作都受到治理与人工监督。

Stars: 0 | Forks: 0

# BoundedOps **由 Qwen 驱动的多智能体事件响应系统,其中智能体在使用工具、消耗预算或建议生产操作之前,必须先协商资源与权限** 契约(ARCL)。** Qwen Cloud Global AI Hackathon — **赛道 3:Agent Society**。 ## 为什么 现代事件响应不仅是一个推理问题,更是一个控制问题。普通的 AI 智能体 可能会产生幻觉式的自信,或者建议不安全的补救措施。BoundedOps 让权限边界 变得可见且可执行:**智能体是不受信任的工作者,runtime 是受信任的系统。** 控制路径: ``` Incident → ARCL Contract → Orchestrator → Agent Society → Tool Broker → Evidence Store → Judge Verdict → Human Approval Gate ``` ## Monorepo 布局 | 路径 | 用途 | |---|---| | `apps/api` | FastAPI 后端:ARCL 引擎、Tool Broker、智能体社会、编排器 | | `apps/web` | Next.js 前端:事件审查仪表板 | | `evals` | 基准 vs. 社会 评估测试套件 | | `docs` | 架构、评分映射、演示脚本、部署证明 | | `infra/alibaba` | 阿里云 ECS 部署文件 | ## 工作原理 1. 一个事件到达。BoundedOps 生成并验证一份 **ARCL 契约** —— 包括允许的工具、 被封禁的工具、基于角色的预算,以及哪些操作需要人工审批 —— 这一切在任何智能体行动之前完成。 2. **Incident Commander** 划分调查任务。专家智能体(Evidence、DBRE、Code) 收集证据 —— 但只能通过*提议*工具调用来进行,**Tool Broker** 会在 检查契约、预算账本和安全策略后执行这些调用。智能体永远不会直接触碰工具。 3. 智能体之间**产生分歧**(支付服务商 vs. 数据库连接池 vs. 代码差异)。**Risk** 智能体会拦截 不安全的补救措施;**Judge** 会将冲突化解为带有需要人工审批门控的判决。 4. **评估测试套件**证明该智能体社会在相同事件上的表现优于单智能体基准。 请参阅 [docs/architecture.md](docs/architecture.md) 了解完整的控制路径,并查看 [docs/diagrams/architecture.svg](docs/diagrams/architecture.svg) 获取系统图表。 ## 智能体社会 | 智能体 | Qwen 模型 | 允许的工具 | 输出 | |---|---|---|---| | Incident Commander | qwen-flash | search_runbook | 任务计划、角色分配 | | Evidence | qwen-flash | read_logs, query_metrics | 证据 + 置信度 | | DBRE | qwen-plus | query_metrics, explain_query | 数据库假设 | | Code | qwen-plus | inspect_deploy_diff | 代码变更假设 | | Risk | qwen-flash | _none_ | 风险 + 审批边界 | | Judge | qwen-max | _none_ | 根本原因、安全操作、判决 | ## 评估 ``` python evals/run_baseline.py --limit 12 python evals/run_society.py --limit 12 python evals/score_results.py # writes evals/results/comparison_summary.json ``` 评分:35% 根本原因 · 20% 证据 · 15% 安全操作 · 10% 工具效率 · 10% 契约 合规性 · 10% 分歧解决。各项数字均通过运行测试套件产生 —— 绝非 硬编码。 **测试套件展示的结果(实时 Qwen):** 诊断是较为简单的一部分 —— 两个系统都找到了根本原因 12/12。代价高昂的失败在于*补救措施*:在 12 个事件中的 4 个里,单智能体虽然诊断出了 问题,但建议**不采取任何行动**(它僵住了),仅获得 **3/12** 的合理、可操作的安全修复。而 受治理的社会 —— 通过呈现并**解决基准在结构上无法处理的分歧** — 在 **8/12** 的情况下建议了具体且可逆的修复方案,在控制每一个工具调用并为每一个生产操作设置门控的 契约下,总体得分更高(0.87 对 0.75)。这种治理代价是**更多**的 工具调用(8.8 对 3.4);这是一笔实打实的交易。胜利在于*可操作的安全修复,而非诊断* —— 而且智能体社会将其数量翻了一倍还多。 ## 文档 - [架构](docs/architecture.md)([图表](docs/diagrams/architecture.svg)) · [评分映射](docs/scoring_map.md) · [演示脚本](docs/demo_script.md) · [提交](docs/submission.md) · [阿里云证明](docs/ALIBABA_CLOUD_PROOF.md) ## 本地设置 ### 后端(Python 3.12+) ``` cd apps/api uv venv --python 3.12 uv pip install -e ".[dev]" uv run uvicorn main:app --reload --port 8000 curl http://localhost:8000/api/health ``` ### 测试 ``` cd apps/api uv run pytest ``` ### 前端(Node 18+) ``` cd apps/web npm install npm run dev # http://localhost:3000 ``` ### 环境 将 `.env.example` 复制为 `.env` 并设置 `DASHSCOPE_API_KEY`(Qwen Cloud / 阿里云百炼模型)。 该示例启用了 ARCL 契约协商(`ENABLE_NEGOTIATION=true`),并将推理层级固定为 `qwen3-32b` —— 这正是已发布基准测试背后的确切配置 —— 因此上述的 在线演示和各项数字可以直接开箱即用重现。(代码的默认设置为关闭协商;部署环境将其打开。) ### 重现基准测试 ``` cd apps/api ENABLE_NEGOTIATION=true QWEN_MODEL_REASONING=qwen3-32b uv run python ../../evals/run_baseline.py --limit 12 ENABLE_NEGOTIATION=true QWEN_MODEL_REASONING=qwen3-32b uv run python ../../evals/run_society.py --limit 12 uv run python ../../evals/score_results.py # -> evals/results/comparison_summary.json ``` ## License MIT — 详见 [LICENSE](LICENSE)。
标签:AI运维, AV绕过, DLL 劫持, FastAPI, MITM代理, 多智能体, 大语言模型, 故障响应, 逆向工具, 阿里云ECS