目录

Agent OS Runtime

灵犀 (ZeroSem) — 第三届中国研究生操作系统开源创新大赛 初赛作品

赛题:一种面向多智能体协作的低开销通信、状态传递与共享记忆机制(社区赛题)

项目简介

Agent OS Runtime 是一套面向多Agent协作的操作系统级运行时系统。它将Agent间通信协议、状态传递和记忆管理从应用层框架下移至操作系统层,通过三个核心机制实现高效协作:

  • 结构化通信协议:将Agent间消息收敛为紧凑JSON格式,Token消耗降低 29.5%
  • mmap零拷贝状态交换:基于共享内存实现embedding向量Agent间直传,绕过文本编解码
  • 三层冷热共享记忆:GPU(FAISS) → RAM(NumPy) → Disk(JSON) 自动晋升淘汰,命中率 56.5%

验证场景:多模态虚假新闻检测,4个Agent协作(Planner + Text Analyst + Visual Analyst + Cross-Modal Reasoner)。

系统架构

┌─────────────────────────────────────────┐
│          Multi-Agent Runtime            │
│  ┌──────────┐ ┌──────────┐ ┌────────┐  │
│  │ Planner  │ │  Text    │ │ Visual │  │
│  │  Agent   │ │ Analyst  │ │Analyst │  │
│  └────┬─────┘ └────┬─────┘ └───┬────┘  │
│       └──────┬──────┴──────────┘       │
│         ┌────┴────┐                    │
│         │ Reasoner │                   │
│         │  Agent   │                   │
│         └────┬─────┘                   │
│  ┌───────────┴───────────┐             │
│  │   Protocol Parser     │             │
│  │ (structured / text)   │             │
│  ├───────────────────────┤             │
│  │   State Exchange      │             │
│  │ (mmap shared memory)  │             │
│  ├───────────────────────┤             │
│  │   Shared Memory       │             │
│  │ (Hot/Warm/Cold tiers) │             │
│  └───────────────────────┘             │
└─────────────────────────────────────────┘

快速开始

环境要求

  • Python 3.10+
  • NVIDIA GPU (24GB+ VRAM recommended)
  • CUDA 12.4+

安装

pip install -r requirements.txt

数据准备

将 Weibo21 数据集转换为实验格式:

python scripts/convert_weibo21.py

运行实验

# 干跑测试(5条样本)
python scripts/run_experiment.py

# 全量实验(100条样本)
# 修改 scripts/run_experiment.py: DRY_RUN = False
python scripts/run_experiment.py

实验结果

主实验

指标 结构化协议 文本基线 提升
平均 Token/样本 965.5 1,368.8 ↓ 29.5%
平均时延/样本 32.8s 33.5s ↓ 1.9%
成功率 100% 100% —
记忆命中率 56.5% 56.5% —
状态交换次数 314次 0 —

消融实验

配置 Token/样本 节省率
文本基线 1,354 —
仅结构化协议 956 29.3%
协议 + 状态交换 953 29.6%
完整系统 974 28.0%

结果图表及详细数据见 results/ 目录。

代码结构

agent-os-runtime/
├── src/
│   ├── runtime/         # Agent基类、注册中心、编排运行时
│   │   ├── agent_base.py
│   │   ├── registry.py
│   │   └── agent_runtime.py
│   ├── protocol/        # 双模式协议解析器
│   │   └── parser.py
│   ├── state/           # mmap通道、跨模态投影、状态交换
│   │   ├── mmap_channel.py
│   │   ├── projection.py
│   │   └── exchange.py
│   ├── memory/          # 三层冷热索引、共享记忆存储
│   │   ├── tiered_index.py
│   │   └── memory_store.py
│   ├── agents/          # Planner / TextAnalyst / VisualAnalyst / Reasoner
│   │   ├── llm_backend.py
│   │   ├── planner.py
│   │   ├── text_analyst.py
│   │   ├── visual_analyst.py
│   │   └── reasoner.py
│   ├── evaluation/      # 指标采集、报告生成
│   │   ├── metrics.py
│   │   └── reporter.py
│   └── data/            # 数据集加载
│       └── loader.py
├── scripts/
│   ├── run_experiment.py    # 实验主入口
│   ├── convert_weibo21.py   # 数据集转换
│   └── setup_data.py        # 数据采集脚本
├── config/
│   └── default.yaml
├── requirements.txt
└── README.md

技术栈

组件 技术
LLM推理 Qwen2.5-VL-7B-Instruct (INT4) + transformers
文本嵌入 bge-m3 (1024维) + sentence-transformers
图像嵌入 CLIP-ViT-L/14 (768维) + transformers
跨模态对齐 联合PCA投影 (256维共享空间)
向量检索 FAISS-GPU (IndexFlatIP)
状态交换 Python mmap 标准库
可视化 matplotlib + seaborn

依赖

所有第三方依赖均为开源许可:

  • transformers (Apache 2.0)
  • sentence-transformers (Apache 2.0)
  • faiss-gpu (MIT)
  • bitsandbytes (MIT)
  • PyTorch (BSD)
  • matplotlib / seaborn (PSF / BSD)
  • Pillow / pandas (PIL / BSD)

目标运行环境

  • openEuler 24.03-LTS-SP3 (Linux Kernel 6.6+)
  • 同时兼容 Ubuntu 22.04

团队成员

灵犀 (ZeroSem)

致谢

设计思想受以下工作启发:

  • AIOS: LLM Agent Operating System (Mei et al., 2024)
  • sched_ext: Linux 6.12+ BPF extensible scheduler
  • AutoGen, LangGraph, CrewAI 等多Agent框架
关于
205.6 MB
邀请码
    Gitlink(确实开源)
  • 加入我们
  • 官网邮箱:gitlink@ccf.org.cn
  • QQ群
  • QQ群
  • 公众号
  • 公众号

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