跳转至

Context Layer Benchmark:运行时上下文访问对照实验

这个实验验证什么

这个实验比较三类知识访问方式:

  • Codex / Claude Code 风格的渐进披露。
  • 预摄取 RAG。
  • 分层混合访问。

它不是模型真实调用压测,也不是 OpenSearch / Postgres 实测。当前目标是先把 Runtime Projection 中不同访问路径的适用边界和失败模式固化成可复跑 benchmark。当前记录已经物化为 ContextDocumentRecord,受控路径通过 SearchConnector.get_document() 做权限和 lifecycle 候选过滤。

运行命令:

bash python scripts/context_layer_benchmark.py --write-report

输出文件:

text vault/50-outputs/context-layer-benchmark-results.json vault/50-outputs/context-layer-benchmark-analysis.md

当前样例

当前包含 11 条 synthetic 上下文记录、8 个 synthetic 问题,覆盖:

  • D2 Markdown 稳定架构知识。
  • D3 大规模政策检索投影。
  • D3 restricted / deleted 反例。
  • D4 财务和项目系统 Evidence Connector。
  • D5 企微接口 owner 询问对象。

工作流

工作流 描述
progressive_only 只查 D2 Markdown 本体制品,模拟 docs/vault + rg + read
rag_unsafe 只查 D3 预摄取检索投影,不做权限和 lifecycle 过滤
rag_guarded 只查 D3 预摄取检索投影,通过 SearchConnector contract 做权限和 lifecycle 过滤
tiered_hybrid 根据任务先查 D2,必要时下探 D3/D4/D5;受控路径复用 SearchConnector 候选过滤

当前结果

工作流 Recall@3 Top1 路径命中 Gap 准确率 安全回答率 权限泄漏 生命周期违规 平均工具调用 平均上下文 token
progressive_only 33% 33% 33% 0% 25% 0 0 2.00 498.5
rag_unsafe 17% 17% 17% 0% 0% 5 4 1.00 374.4
rag_guarded 17% 17% 17% 100% 38% 0 0 1.00 223.1
tiered_hybrid 100% 100% 100% 100% 100% 0 0 1.38 154.0

结论

第一,D2 Markdown 渐进披露很适合稳定架构、ADR、协作规则类问题,但无法回答大规模政策检索、实时业务状态和 owner 询问。

第二,D3 RAG-first 能覆盖大规模政策检索,但如果没有权限和 lifecycle 过滤,会泄露 restricted 或 deleted 材料。

第三,D3 guarded 解决了部分安全问题,但仍无法回答 D4 Evidence Connector 权威状态和 D5 问谁的问题。

第四,分层混合在当前样例里效果最好,但它必须有 Context Router 记录下探原因,避免所有问题都走最重链路。这里的 D2/D3/D4/D5 是运行时访问路径,不是知识形态主模型。

第五,敏感意图识别是必要组件。薪酬银行账号 这类问题不能被 D2 泛文档弱相关命中,必须进入受控检索或直接报告 gap。

对下一步选型的影响

当前还没有决定 D3 检索投影的最终底座。下一步应把同一批 ContextDocumentRecord 和同一套 SearchConnector conformance case 接到:

  • Postgres FTS / pgvector。
  • OpenSearch / Elasticsearch。

对比指标不只看 Recall,还要看:

  • ACL / RLS 表达。
  • 删除传播。
  • lifecycle 过滤。
  • 中文分词。
  • 精确编号。
  • 更新延迟。
  • 运维成本。
  • rank log / explain 能力。

D4 Evidence Connector 也还没有最终方案,需要用真实 Connector 验证:财务、CRM、项目系统和 GitHub 的读取成本、权限裁剪、审计记录和错误恢复。