目录

Aegis — 面向多智能体的操作系统级执行时 / An OS-Level Runtime for Multi-Agent LLM Systems

赛题:面向多智能体的操作系统级执行时(Agent Runtime)

一句话 / What it is

Aegis 是一个运行在 openEuler/Linux 上、面向运行时动态生成多智能体 LLM 系统的操作系统级执行时(OS-level runtime):把每个被 spawn 出来的 agent 提升为 OS 一等公民 ACB(Agent Control Block,类比 PCB),以其为唯一锚点统一调度 / 上下文(KV)复用·压缩·隔离 / 故障容错 / 可观测控制 / agent 间通信;其机制内核是把「故障·污染遏制」做成带可证明 blast-radius 界的一等执行时调度原语。全部能力已在真实 GPU(Qwen2.5-3B/7B, vLLM 0.22)+ 真实 openEuler 24.03 LTS(真 cgroup)上验证。


1. 实验结果总结 / Experiment Results

本次实验一句话:在真实 GPU 与真实 openEuler 上,验证了一个完整可运行的 OS 级多智能体执行时;安全侧把 prompt-injection 攻击成功率从 18% 压到 ≈3%(标准基准 AgentDojo)、把污染 blast-radius 从超临界发散钉到 1。

1.1 实现 → 已验证证据

# 赛题要求 实现模块 已验证结果(真实/混合模态)
1 多 Agent 资源感知调度(依赖 + 运行时动态生成) aegis/scheduler.py tracker.py placement.py runtime.py 可扩展性 N^1.70→N^1.12(近线性)、每个agent开销下降21倍
2 统一 Agent 执行抽象(生命周期/状态/OS 资源) aegis/acb.py(8 状态 FSM)、os_substrate.py(cgroup/ns/CRIU) /proc 计费 + cgroup.freeze 抢占 + CRIU checkpoint↔restore 往返
3 故障隔离 / 防级联(机制核心) aegis/isolation.py kv.py(ISOLATE 臂)、sim/ifc_containment.py blast 实测吻合 1/(1−R)(R=0.9→10.03 vs 10.00),ISOLATE 钉死 1; IFC 最小割 sink 污染 92→100% ⇒ 0%
4 上下文复用 / 压缩 / 隔离 aegis/kv.py(φ-五臂)、kv_hooks.py engine.py stock vLLM 无 fork per-block 驱逐 reuse 992→0
5 复杂应用 + 稳定性 aegis/apps/ run_stability.py run_codegen.py 真 7B:40 任务/457 agents + 20% 故障 → 零崩溃、JCR=1.0、blast=0; pass@4=0.90>pass@1
6 Agent 间高效通信 aegis/kv.py(pass-by-KV-handle)、libaegis.pysim/run_comm.py re-prefill 17.1× 减少(O(K) vs O(K²))
7 硬性要求:openEuler 部署 deploy/ openEuler 24.03 LTS 原生跑通:真 cgroup + CRIU + blast/IFC(deploy/openeuler_run.log
8 系统级可观测与控制(agenttop) aegis/observ.py run_top.py 闭环控制把 JCR 0→1、封 20 句柄、遏制 blast

1.2 安全实验(真实 Qwen2.5-7B;E28–E34)

# 内容 关键数 图 / 数据
1 真实 prompt-injection 攻防(provenance 门控、非内容检测) ASR 0.35→0、JCR +35pts results/attack_defense.json
2 DIFC 机密性泄漏防护 私密 key 泄漏 84.4%→0%,declassify 恢复满效用 results/confidentiality.json
3 DIFC 焊入运行时(每条 KV-handle 流过 can_flow demo_A JCR=1.0/blast=0;welded=True aegis_results/difc_runtime.json
4 AgentDojo 标准基准 head-to-head 无防御 ASR 0.181 → 本系统 0.028(−85%)、效用不降;注入风格 0.007–0.028 results/agentdojo/*.json
5 一把格统四治 + 实测 cache 侧信道 侧信道在本栈真实 AUC=1.0;统一格四属性全护 results/{unified_difc,cache_timing_channel}.json

AgentDojo 标准基准 head-to-head + 自适应攻击鲁棒性

一把 DIFC 格统四治 + 实测 cache 侧信道


2. 代码仓库结构 / Repository Layout

Agent_Runtime/
├── README.md                     # 本文件(提交说明)
├── reproduce.sh                  # 一键复现入口(CPU 侧)
│
├── aegis/                        # 运行时主包 / the runtime package
│   ├── acb.py                    # ACB + 8 状态生命周期 FSM + 转换守卫
│   ├── os_substrate.py           # cgroup-v2 / namespace / CRIU / eBPF 绑定
│   ├── isolation.py              # ISOLATE 物理侧:真 unprivileged ns 沙箱 + seccomp
│   ├── kv.py                     # KV Manager:φ-五臂 KEEP/SHARE/COMPRESS/EVICT/ISOLATE
│   ├── difc.py                   # DIFC 信息流格(Denning 格 + can_flow + capability)
│   ├── kv_hooks.py / engine.py   # 引擎级 cache-control hook / vLLM 适配
│   ├── scheduler.py              # RACS 联合调度器 + 命名基线(fcfs/hexagent/edf/sjf/fair)
│   ├── tracker.py / placement.py # 运行时增长 spawning-DAG / lineage;GPU placement
│   ├── runtime.py / concurrent.py# 事件循环 / 并发多-slice 执行器
│   ├── observ.py / run_top.py    # agenttop 系统级可观测 + 控制台
│   ├── libaegis.py / predictor.py / metrics.py
│   ├── apps/                     # 复杂应用(codegen / deepstack)
│   └── run_*.py                  # 实验入口(os_demo / cascade / stability / attack_defense …)
│
├── sim/                          # vLLM 微基准
│   ├── run_comm.py               # E9 pass-by-KV-handle
│   ├── run_block_hook.py         # E14 stock-vLLM per-block KV 驱逐
│   ├── ifc_containment.py        # E16 IFC 最小割污染遏制
│   ├── rs_sim.py                 # 精确-OPT reload 模拟器(E34 理论探索基座)
│   └── results/                  # 各实验 JSON / 图 / 日志
│
├── tests/                        # test_aegis.py 17/17 + test_difc.py 12/12(29 全绿)
│
├── deploy/                       # openEuler 部署(硬性要求)
│   ├── Dockerfile.openeuler / run_openeuler.sh / openeuler_entry.sh
│   └── openeuler_run.log         # 真 cgroup + CRIU + 在 openEuler 跑通日志
│
├── run_agentdojo_difc.py         # E32 AgentDojo head-to-head 编程式 runner
├── run_unified_difc.py           # E33 一把格统四治
├── cache_timing_channel.py       # E33-A 实测 cache 侧信道
├── extend_theory.py / probe_k2.py# E34 理论探索(诚实负结果)
├── run_difc_overhead.py          # 门控开销核算
│
├── results/                      # 实验结果 JSON
│   └── agentdojo/                # E32 AgentDojo 4 配置 + 4 注入风格
└── aegis_results/                # 实验结果 + figures/
    └── figures/                  # 主图(blast_radius / ifc_containment / agenttop / agentdojo_difc / unified_difc …)

3. 如何运行 / 复现 / How to Run

环境说明:所有实验在 pro6000 服务器上跑(GPU/真实-7B 必须);CPU 侧实验也可在任意 CPU 机复现。

  • CPU 环境:~/.conda/envs/rwj/bin/python(numpy/matplotlib/torch-cpu)
  • GPU/vLLM 环境:~/.conda/envs/rwj-serve/bin/python(vLLM 0.22)

3.1 一键复现(CPU 侧,几秒)

bash reproduce.sh cpu          # E10 blast-radius / E11 可扩展 / E16 IFC / E17 可观测 + OS demo

3.2 GPU / 真实-7B 实验

export CUDA_VISIBLE_DEVICES=1                                              # 只用 GPU1
export VLLM_USE_FLASHINFER_SAMPLER=0 VLLM_ENABLE_V1_MULTIPROCESSING=0 HF_HUB_OFFLINE=1
~/.conda/envs/rwj-serve/bin/python -m aegis.run_stability                  # E12 稳定性(真 7B,20% 故障)
~/.conda/envs/rwj-serve/bin/python -m aegis.run_codegen                    # E13 多-agent 代码生成
~/.conda/envs/rwj-serve/bin/python sim/run_comm.py                         # E9 pass-by-KV-handle
~/.conda/envs/rwj-serve/bin/python sim/run_block_hook.py                   # E14 per-block KV 驱逐
# 安全实验(E28–E34,需先起 vLLM OpenAI server):
~/.conda/envs/rwj-serve/bin/python -m aegis.run_attack_defense             # E28 攻防
~/.conda/envs/rwj-serve/bin/python -m aegis.run_confidentiality            # E30 机密性
python run_agentdojo_difc.py --mode difc --suite banking                   # E32 AgentDojo
python run_unified_difc.py ; python cache_timing_channel.py                # E33
python extend_theory.py ; python probe_k2.py                               # E34(诚实负结果)

3.3 测试 + openEuler 部署

python tests/test_aegis.py     # 17/17    |    python tests/test_difc.py   # 12/12
bash deploy/run_openeuler.sh   # 构建 openEuler 24.03 容器,cgroup + CRIU + blast/IFC 复跑
关于
7.5 MB
邀请码
    Gitlink(确实开源)
  • 加入我们
  • 官网邮箱:gitlink@ccf.org.cn
  • QQ群
  • QQ群
  • 公众号
  • 公众号

版权所有:中国计算机学会技术支持:开源发展技术委员会
京ICP备13000930号-9 京公网安备 11010802047560号