docs: complete final competition submission deliverables
OpenMemory 是面向多智能体(Multi-Agent)长程协作的系统层运行时原型系统,作为操作系统开源创新大赛技术成果开源发布。
在传统多智能体协作框架中,角色间常以自然语言长文本或松散 JSON 交换所有上下文,带来两方面问题:一是大量模型 Token 被消耗在反复传递不变背景与冗余中间信息上;二是下游角色难以直接使用前置分析结果,需要反复解析实体与状态。
在已有技术体系中,LangGraph 提供了状态图检查点与节点缓存,AutoGen 支持对话缓存,Ray 支持基于 ObjectRef 的不可变对象引用。OpenMemory 进一步将类型化动作分发、本地应用状态直接消费与基于依赖校验的计算复用统一接入同一运行时,在两组连续协作任务基准中完成系统化验证与因果评估。
ObjectRef
系统围绕真实研发运维中两组具有严密因果依赖关系的典型十轮长程协作场景构建评测基准:
两组任务均完整涵盖冷启动计算、参数变更下的派生状态复用、跨轮依赖失效判定与按需精准重算,为系统评估提供了确定性、可检验的基准场景。
OpenMemory 提供以下相互支撑的核心系统层技术能力,前三项对应本项目的三项核心机制:
ProtocolRef
mmap
x86_64
pyproject.toml
dependencies = []
protobuf
local-bge-cpu
local-bge-gpu
pytest>=8,<10
ruff>=0.6
mypy>=1.10
environment.yml
# 1. 克隆代码仓库 git clone <repository-url> cd OpenMemory # 2. 基于 Conda 安装一站式开发环境(固定 Python 3.11 与必要工具链) conda env create -f environment.yml conda activate openmemory # 3. 以可编辑模式安装当前核心 Python 包 pip install -e . # 4. 运行仓库级静态规范校验(验证 Shell 语法、环境配置与 Markdown 规范) ./scripts/verify
本地实验台已内置预构建的独立单页运行资产(开箱即用,无需 Node 依赖即可由 Python 服务直接托管)。如需在开发模式下对 Web 端进行二次开发或重新编译:
# 安装 Web 依赖 npm ci --prefix web # 运行前端测试与类型检查 npm test --prefix web npm run lint --prefix web # 重新构建静态包并自动同步至 Python 包资产目录 npm run build --prefix web
系统提供本地离线回放体验、交互式实验台(Studio)与 openEuler 官方容器复现三种运行入口:
在已激活的 openmemory 环境中,运行两大主要连续协作任务:
openmemory
# 运行源码故障影响分析工作流(Codebase Incident & Repair) openmemory run --stage diagnostic examples/scenarios/codebase-incident-repair-continuous.json \ --backend replay --modes B0 B1 B2 B3 --repeat 1 --memory-policy clean --vector-capability enabled # 运行日志与遥测诊断工作流(Log & Telemetry Diagnosis) openmemory run --stage diagnostic examples/scenarios/telemetry-diagnosis-continuous.json \ --backend replay --modes B0 B1 B2 B3 --repeat 1 --memory-policy clean --vector-capability enabled # 运行十轮连续长程协作稳定性验证 openmemory run --stage diagnostic examples/scenarios/stability-10-round.json \ --backend mock --modes B3 --repeat 1 --memory-policy clean --vector-capability enabled
评测结果将输出至 benchmarks/results/<scenario_id>/<run_id>/,包含各模式对比摘要(summary/summary.md)、事件轨迹(trace.jsonl)、四层记账数据(metrics.json)与执行结果(result.json)。
benchmarks/results/<scenario_id>/<run_id>/
summary/summary.md
trace.jsonl
metrics.json
result.json
# 启动本地服务(默认监听 127.0.0.1:8765) openmemory studio --host 127.0.0.1 --port 8765
浏览器访问 http://127.0.0.1:8765/studio,可自由切换任务、调整输入参数、实时触发 B0/B2/B3 模式对比,并查看状态复用与计算省略的图形化时序。
http://127.0.0.1:8765/studio
# 构建 openEuler 官方开发容器镜像 ./scripts/dev-env.sh build # 进入容器交互终端 ./scripts/dev-env.sh shell # 在容器内部执行环境配置与工具链验证 ./scripts/dev-env.sh verify # 执行 openEuler 官方凭证封装自动化评测 ./scripts/verify-openeuler-evidence.sh --inside-container \ --output-dir benchmarks/results/verify-run \ --skip-live-smoke --vector-capability enabled
OpenMemory 建立了严格分层的自动化测试套件:可执行的单元、集成与端到端测试位于 tests/ 目录下,而 benchmark 的场景、语料、oracle 与 replay 夹具归档于 benchmarks/。
tests/
benchmarks/
tests/unit/
protocol.py
stores/
coordinator.py
task_graph.py
pytest tests/unit -q
tests/integration/
pytest tests/integration -q
tests/e2e/
test_documented_replay_path.py
pytest tests/e2e -q
tests/evidence/
# 1. 运行核心单元测试 pytest tests/unit -q # 2. 运行跨模块集成测试 pytest tests/integration -q # 3. 运行端到端与文档化路径一致性验证 pytest tests/e2e -q # 4. 执行全量自动化测试套件(当前基准:1239 passed, 1 skipped) pytest tests/unit tests/integration tests/e2e -q
项目秉持严谨的工程与科学态度,主动披露系统的适用边界与技术局限:
linux/amd64
stage=diagnostic
elapsed_ms
仓库提交的候选证据投影位于 tests/evidence/final-freeze-20261006-longer-wait/,其中包含离线评审看板。当前工作区的完整候选结果位于 benchmarks/results/final-freeze-20261006-longer-wait/;该目录由 .gitignore 排除,不随克隆分发。benchmarks/proof/ 是最近一次 promotion 的规范证据,不绑定本次候选。最终打包工具 scripts/render-final-submission.py 要求证据根目录不存在或为空,并在该根目录下写出 docs/submission/reviewer-evidence-map.md 描述的平铺 tests/evidence/ 布局;当前仓库跟踪的 tests/evidence/final-freeze-20261006-longer-wait/ 即为面向本次候选的评审投影。
tests/evidence/final-freeze-20261006-longer-wait/
benchmarks/results/final-freeze-20261006-longer-wait/
.gitignore
benchmarks/proof/
scripts/render-final-submission.py
docs/submission/reviewer-evidence-map.md
本次工程候选绑定源码提交版本 a2f8da90c443ddf8b4b905bd0e6da893d22cfd04(a2f8da9)及在线采集 efcfab6a-a36b-4562-bf5d-bea5f6a836f3。完整结果位于本地忽略目录 benchmarks/results/final-freeze-20261006-longer-wait/;仓库内可查验的脱敏投影位于 tests/evidence/final-freeze-20261006-longer-wait/。
a2f8da90c443ddf8b4b905bd0e6da893d22cfd04
a2f8da9
efcfab6a-a36b-4562-bf5d-bea5f6a836f3
competition-proof-manifest.json
passed
competition-scorecard.json
evidence-supported
演示材料按 presentation/ 中的要求准备,录制路线见演示脚本。openmemory demo-video 为可选的短版素材生成工具。以下命令用于候选归档审计流程:
presentation/
openmemory demo-video
openmemory submission-audit --proof-manifest benchmarks/results/<candidate>/competition-proof-manifest.json \ --video benchmarks/results/<candidate>/demo/openmemory-competition-demo.mp4 \ --output-dir benchmarks/results/<candidate>/submission-audit --require-ready
OpenMemory 遵循模块职责解耦与清晰的工程工件组织,核心代码、交互平台、自动化测试套件与主要交付资产分布如下:
OpenMemory/ ├── src/ # 核心系统实现(类型化协议契约、双平面存储引擎、状态调度器) ├── web/ # 本地交互式 Studio 实验台单页前端(React / TypeScript) ├── tests/ # 分层自动化测试套件(unit/、integration/、e2e/)与离线评审证据镜像 ├── benchmarks/ # 标准协作评测工作流、真实基准与冻结凭证 ├── demo/ # 可运行复现脚本与一键验证入口 ├── presentation/ # 答辩演示材料目录与本地展示素材 ├── docs/ # 体系化设计文档、技术报告与官方交付文件 │ ├── 项目说明书.pdf # 完整技术说明与架构实现详述 │ ├── 项目创新说明.pdf # 三大核心创新点与学术/工业界对比论证 │ ├── 成员分工及主要贡献说明.pdf # 研发分工与贡献权重 │ └── 人工智能及第三方工具使用说明.pdf # 工具真实使用披露与安全边界 ├── README.md # 项目主说明与快速复现指引 └── 作品原创承诺书.pdf # 赛事原创合规签署材料
项目正式提交材料采用 PDF 格式,技术结论与正式评测数据均严格绑定冻结源码版本 a2f8da9。演示材料规格与本地回放指引详见 演示材料说明 与 可运行 Demo 指引。
benchmarks/results/
版权所有:中国计算机学会技术支持:开源发展技术委员会 京ICP备13000930号-9 京公网安备 11010802047560号
OpenMemory
项目简介
OpenMemory 是面向多智能体(Multi-Agent)长程协作的系统层运行时原型系统,作为操作系统开源创新大赛技术成果开源发布。
在传统多智能体协作框架中,角色间常以自然语言长文本或松散 JSON 交换所有上下文,带来两方面问题:一是大量模型 Token 被消耗在反复传递不变背景与冗余中间信息上;二是下游角色难以直接使用前置分析结果,需要反复解析实体与状态。
在已有技术体系中,LangGraph 提供了状态图检查点与节点缓存,AutoGen 支持对话缓存,Ray 支持基于
ObjectRef的不可变对象引用。OpenMemory 进一步将类型化动作分发、本地应用状态直接消费与基于依赖校验的计算复用统一接入同一运行时,在两组连续协作任务基准中完成系统化验证与因果评估。应用场景
系统围绕真实研发运维中两组具有严密因果依赖关系的典型十轮长程协作场景构建评测基准:
两组任务均完整涵盖冷启动计算、参数变更下的派生状态复用、跨轮依赖失效判定与按需精准重算,为系统评估提供了确定性、可检验的基准场景。
主要功能
OpenMemory 提供以下相互支撑的核心系统层技术能力,前三项对应本项目的三项核心机制:
ProtocolRef),将模型可见的控制指令(意图、参数、句柄)与底层数据载荷解耦。在同等任务完成质量下,代码分析场景的 API-total-token 节省率配对中位数达 **79.83%**(累计总量节省 **79.92%**),日志诊断场景达 **80.16%**(累计总量节省 **79.78%**);mmap)与 Unix 域套接字(UDS)的跨进程传输通道;系统环境与依赖要求
1. 目标运行环境
x86_64)2. 软件依赖要求
pyproject.toml的dependencies = [])。protobuf(Linux 原生帧序列化)、local-bge-cpu/local-bge-gpu(本地向量嵌入)。pytest>=8,<10、ruff>=0.6、mypy>=1.10,由environment.yml提供。构建与安装方法
1. 主机开发环境配置(推荐方式)
2. Web 可视化工作台构建(可选)
本地实验台已内置预构建的独立单页运行资产(开箱即用,无需 Node 依赖即可由 Python 服务直接托管)。如需在开发模式下对 Web 端进行二次开发或重新编译:
运行方法
系统提供本地离线回放体验、交互式实验台(Studio)与 openEuler 官方容器复现三种运行入口:
1. 本地确定性基准回放
在已激活的
openmemory环境中,运行两大主要连续协作任务:评测结果将输出至
benchmarks/results/<scenario_id>/<run_id>/,包含各模式对比摘要(summary/summary.md)、事件轨迹(trace.jsonl)、四层记账数据(metrics.json)与执行结果(result.json)。2. 启动本地交互式实验台
浏览器访问
http://127.0.0.1:8765/studio,可自由切换任务、调整输入参数、实时触发 B0/B2/B3 模式对比,并查看状态复用与计算省略的图形化时序。3. openEuler 24.03-LTS-SP3 官方容器复现
测试方法与测试材料说明
OpenMemory 建立了严格分层的自动化测试套件:可执行的单元、集成与端到端测试位于
tests/目录下,而 benchmark 的场景、语料、oracle 与 replay 夹具归档于benchmarks/。1.
tests/测试材料结构与分类说明tests/unit/protocol.py)、存储引擎(stores/)、任务图调度器(coordinator.py/task_graph.py)、C2 状态算子因果移除、C3 依赖有效性校验、余弦相似度特征重建及安全脱敏逻辑pytest tests/unit -qtests/integration/pytest tests/integration -qtests/e2e/test_documented_replay_path.py)、长程交互稳定性及评审证明包构建pytest tests/e2e -qtests/evidence/2. 测试执行方法
已知限制与客观边界
项目秉持严谨的工程与科学态度,主动披露系统的适用边界与技术局限:
linux/amd64(x86_64)运行环境,但没有记录物理宿主机架构;该结果不能证明原生x86_64物理机性能;stage=diagnosticReplay 汇总(每个模式一条序列)记录的 B0→B3elapsed_ms增量为 Codebase +7.702%、Telemetry +27.889%,不代表在线延迟。六次配对 host-live 测量中的完整本地 B2−B3 净差中位数分别为 −85.222 ms 与 −245.045 ms,尚未证明稳定净节约;详见技术报告;可查验的候选证据
仓库提交的候选证据投影位于
tests/evidence/final-freeze-20261006-longer-wait/,其中包含离线评审看板。当前工作区的完整候选结果位于benchmarks/results/final-freeze-20261006-longer-wait/;该目录由.gitignore排除,不随克隆分发。benchmarks/proof/是最近一次 promotion 的规范证据,不绑定本次候选。最终打包工具scripts/render-final-submission.py要求证据根目录不存在或为空,并在该根目录下写出docs/submission/reviewer-evidence-map.md描述的平铺tests/evidence/布局;当前仓库跟踪的tests/evidence/final-freeze-20261006-longer-wait/即为面向本次候选的评审投影。正式评审证据与量化指标
本次工程候选绑定源码提交版本
a2f8da90c443ddf8b4b905bd0e6da893d22cfd04(a2f8da9)及在线采集efcfab6a-a36b-4562-bf5d-bea5f6a836f3。完整结果位于本地忽略目录benchmarks/results/final-freeze-20261006-longer-wait/;仓库内可查验的脱敏投影位于tests/evidence/final-freeze-20261006-longer-wait/。competition-proof-manifest.json为passed,competition-scorecard.json为evidence-supported。演示材料按
presentation/中的要求准备,录制路线见演示脚本。openmemory demo-video为可选的短版素材生成工具。以下命令用于候选归档审计流程:代码仓库结构与核心交付资产
OpenMemory 遵循模块职责解耦与清晰的工程工件组织,核心代码、交互平台、自动化测试套件与主要交付资产分布如下:
项目正式提交材料采用 PDF 格式,技术结论与正式评测数据均严格绑定冻结源码版本
a2f8da9。演示材料规格与本地回放指引详见 演示材料说明 与 可运行 Demo 指引。体系化文档与延伸导航
tests/evidence/final-freeze-20261006-longer-wait/;benchmarks/proof/保留最近一次 promotion 的证据,与本次候选版本不同。全新克隆不包含被忽略的benchmarks/results/原始运行目录。