你让一个 AI 助手长期帮你工作。第一周,它知道你喜欢简洁的报告;第二周,它读过你的项目资料;第三周,它还总结出一套处理同类任务的步骤。但换个会话,它可能又像第一次见你:偏好要重说,资料要重找,做法也要重新摸索。
OpenViking想解决的正是这个问题。它不是一个更会聊天的新模型,而是一个面向 AI Agent 的开源“上下文数据库”。这里的上下文,指模型每次行动时能看到的指令、历史、资料和工具结果。OpenViking负责把这些长期信息存起来,再挑出当下真正需要的部分交给模型。
这值得现在关注,因为 Agent 的竞争正在从“模型会不会回答”,转向“系统能否长期记住、准确取用并积累经验”。不过,本文事实主要来自 volcengine 的项目仓库及其官方文档,尚无独立信源验证其效果。
把三只抽屉合成一个文件柜
今天的 Agent 往往分别处理三类信息:项目文档等知识、用户偏好等长期记忆,以及完成任务的方法。OpenViking把它们统一成 resources、memories 和 skills,并放进 viking:// 虚拟文件系统。
虚拟文件系统不一定对应电脑里的真实文件。它只是用目录和文件的方式组织信息,让 Agent 可以像操作文件一样执行 ls、tree、read 和 write:先看目录,再读内容,也能创建或修改记录。
这套设计的直观价值是,Agent不必面对一个混在一起的大资料池。它可以沿着目录寻找:公共项目资料放在 resources,某位用户的写作偏好放在 memories,搜索代码或分析数据的步骤放在 skills。每项内容都有自己的 viking:// 地址,可以被浏览和检索。
它也吸收了 RAG——检索增强生成,即先从外部资料库找相关内容,再让模型据此回答——的思路。OpenViking会先用向量搜索定位候选目录。向量搜索可以理解为按“意思是否相近”找资料,而不只匹配相同字词。随后,Agent再进入目录检查内容。find直接执行查询,search则能结合当前会话规划检索。
不先搬完整本书,先看书脊和目录
上下文并非越多越好。资料全部塞给模型,会占用输入空间,也可能让真正相关的信息被淹没。OpenViking因此把内容分成三层:L0 是一句话摘要,用来快速判断是否相关;L1 是核心信息和使用场景,帮助规划下一步;L2 才是完整原始数据。
可以把它想成在图书馆找资料。Agent先扫一眼书脊上的简介,再看目录和内容提要,确认有用后才翻到全文。经过语义处理的目录会带有 L0 和 L1 摘要,项目方据此主张系统可以按需加载上下文。但目前没有独立测试证明这种设计究竟能节省多少成本和时间,或能否稳定提高准确率。
“自我进化”实际发生在哪里?
OpenViking更有意思的一步,是把会话变成长期记忆。提交一次会话后,系统会归档对话,并在后台提取候选记忆。它不会一律追加,而是把候选内容与已有记忆比较,再决定创建、合并或跳过。
例如,Agent已经记得“用户偏好短句”,新会话又出现“报告尽量简洁”,系统可以尝试合并,而不是保存两条近似记录。据 OpenViking GitHub 官方文档,记忆新增和修改还会写入 memory_diff.json,保留修改前后的差异。开发者因此可以追查某条错误记忆来自哪次归档,并手动纠正;现有材料没有表明它具备完整的自动版本回滚。
所以,标题中的“自我进化”需要加引号。现有材料展示的是记忆的自动提取、比较和整理,并未证明系统能够自主改进模型能力。更准确地说,它让 Agent 的外部上下文有机会随使用逐步更新。
skills也被纳入这条积累路径。启用 VikingBot 后,ov compile可以调用 skill,把源材料整理成 wiki、知识图谱或报告。知识不只是被找回来,还能按既定方法重新编排。
为什么它可能成为独立基础设施
官方团队史显示,这条路线并非突然出现:VikingDB在2019至2023年间用于字节跳动内部多个核心产品,2024年与知识库、记忆库一起进入火山引擎公有云;到2025年底,团队又开源了能读取屏幕环境并生成摘要、待办和提示的 MineContext。OpenViking随后把向量检索和个人上下文实验收拢成一套通用底座。
项目目前提供无需安装、可在浏览器使用的 OpenViking Studio,也支持自托管 Web Studio,并能通过 SDK、HTTP API、MCP及多种 Agent 集成接入。MCP是一套让模型调用外部工具和数据的连接方式。开源服务器采用 AGPLv3,运行还需要 Python 3.10 以上、嵌入模型和 VLM;VLM即视觉语言模型,可共同处理图像与文字。
OpenViking 0.3.22已经在长对话用户记忆基准 LoCoMo 和多轮 Agent 任务基准 tau2-bench 上评测。项目方公布了准确率、输入 token、查询延迟和任务成功率方面的改善;token可以粗略理解为模型处理文字时使用的计量单位。但供稿未提供完整基准报告、对照配置和复现实验细节,因此不能据此断言它领先同类方案,也不能视作独立复现。
局限与未知
- 关键架构与效果都只有项目方单一信源,实际收益仍需第三方测试。
- 自动提取的记忆会不会误记、过时或错误合并,现有材料没有给出系统性结果。
- 它证明了上下文可以持续整理,却没有证明 Agent 或底层模型实现了严格意义上的“自我进化”。
OpenViking真正值得看的,不是这个颇有传播力的标题,而是它提出了一个更务实的判断:当 Agent开始长期工作,记忆、检索和技能编排可能不再只是应用里的几个附属模块,而会合并成一层可以独立部署、审计和替换的基础设施。