OpenViking 今日发布
字节跳动火山引擎团队于 2026 年初开源的 AI Agent 上下文数据库
OpenViking 是字节跳动火山引擎团队于 2026 年初开源的 AI Agent 上下文数据库,开源后迅速在 AI Agent 社区引发关注,GitHub Star 数突破 15,000,其核心理念是将 Agent 的记忆、资源、技能统一抽象为虚拟文件系统,协议前缀为 viking://,开发者可以像操作本地文件一样管理 Agent 的上下文。
传统 RAG 系统在 Agent 执行长周期任务时面临四大痛点:上下文碎片化导致信息丢失、Token 消耗随对话轮次激增、向量检索效果不稳定、调试困难无法追溯检索路径。OpenViking 从文件系统范式出发,重新定义 Agent 与上下文之间的交互方式,将向量数据库替换为虚拟文件系统,让 Agent 通过 ls、tree、find 等命令浏览和管理自己的记忆。
该系统的核心创新在于三层加载架构:L0 层为摘要(Abstract),约 100 个 token,用于快速判断相关性;L1 层为概述(Overview),约 2,000 个 token,包含核心信息和适用场景,用于任务规划;L2 层为细节(Details),完整原始内容,仅在实际需要时按需加载。这一设计将 Token 消耗减少了 34.3%–91.0%,查询延迟降低 58.45%–66.10%。
在检索机制上,OpenViking 采用目录递归检索:向量搜索首先定位得分最高的目录,然后逐层向下钻取,确保返回结果自带完整上下文语境。每次检索都会保留浏览轨迹(trajectory),开发者可以随时回溯检索路径,定位结果偏差的根源,这一特性大幅提升了 Agent 的可观测性和可调试性。
会话也是 OpenViking 的重要设计维度。Agent 完成一轮会话后,系统会异步提取用户偏好和 Agent 经验,沉淀为长期记忆。这意味着后续会话可以从上一轮的工作状态中恢复,Agent 不再是每次都从零开始。
OpenViking 的虚拟文件系统结构包括:viking://resources/ 用于存放项目文档、代码仓库、网页等外部资源;viking://user/{user_id}/memories/ 用于存储用户偏好(如写作风格、编码习惯);viking://user/{user_id}/skills/ 用于放置 Agent 技能(如搜索代码、数据分析);viking://user/{user_id}/peers/ 用于多 Agent 协作场景中的对等节点。
在基准测试中,OpenViking 在长对话用户记忆任务(LoCoMo)上将准确率从原生记忆的 24%–57% 提升至 80%–83%;在多轮 Agent 任务(tau2-bench)上,任务成功率提升 6.87–11.87 个百分点。
OpenViking Studio 提供了在线 playground,无需安装即可体验上下文文件系统的交互方式,支持语义搜索和多 Agent 协作场景演示。项目要求 Python 3.10 或更高版本,可通过 pip install openviking 安装。
评论与建议
登录 后参与评论或提建议