OpenViking 是火山引擎开源的 AI 智能体上下文数据库,目标是用一个文件系统统一智能体所知道的一切:知识、记忆和技能。
用途
大多数智能体记忆是黑盒:文本输入、嵌入输出,无法查看实际存储了什么。OpenViking 将上下文组织为 viking:// 下的虚拟文件系统,智能体可以像操作文件一样导航——ls、tree、read、write、grep——用户也可以打开任意目录检查并编辑智能体已知的内容。每个目录都带有生成的摘要,智能体可以先扫描摘要再决定读取什么。
主要能力
- 统一文件系统:资源存放文档和代码;记忆保留用户偏好和经验;技能定义如何执行任务,而不仅是提取的事实。每项内容都有 viking:// URI 用于浏览和检索。
- 目录级检索:将语义搜索限定到某个项目或记忆子树,而不是扫描扁平的向量池。find 直接运行查询;search 根据会话上下文规划检索。
- 上下文分层:生成的目录摘要(L0)和概览(L1)让智能体在打开完整内容(L2)之前判断相关性。
- 会话即文件:提交会话会归档对话并提取记忆为可检查、编辑和合并的 Markdown。启用 VikingBot 后,ov compile 可将源材料组织为 wiki、知识图谱或报告。
- 三种加载层级:L0(摘要)一句话总结用于快速相关性检查;L1(概览)核心信息和使用场景用于规划;L2(详情)完整原始数据,仅在需要时读取。
使用方式
先搭建 OpenViking 服务器;若已有服务器,可直接跳到与智能体集成。自行部署需要 uv、Python 3.10+ 以及提供嵌入模型和 VLM 的模型提供商。
安装 OpenViking 并运行设置向导,配置模型:
uvx openviking init
init 会写入 ~/.openviking/ov.conf,支持 Volcengine、OpenAI、Codex OAuth、Kimi、GLM 和本地 Ollama。服务器在前台运行,需保持终端打开。
也可使用火山引擎托管的 OpenViking 服务,前 50 个文件免费。在火山引擎产品页激活后,在控制台用户管理 → API Key 创建密钥。服务器地址为 https://api.vikingdb.cn-beijing.volces.com/openviking。
使用 CLI 探索:openviking 包包含 ov CLI。服务器运行后,导入仓库并搜索:
ov find
ov find 返回带 URI 的匹配上下文,可进一步检查。客户端配置(ov config)、独立 CLI 安装和索引维护参见 CLI 设置。
使用 Python、Go 或 TypeScript SDK,或 HTTP API 构建自己的集成。
与智能体集成:将编码智能体连接到 OpenViking 以获得跨会话记忆。记忆插件安装器覆盖 Claude Code、Codex、Cursor、TRAE、OpenCode 等,并检测已安装的工具。准备好服务器地址,若启用了认证还需 API 密钥。运行安装器,选择工具和服务器(自托管/本地、Volcengine OpenViking Cloud 或自定义 URL)。若启用认证,输入用户密钥而非根密钥。然后重启智能体。安装器需要 macOS 或 Linux、Node.js 18+ 和 curl,无需 sudo。Windows 使用桌面应用。
桌面应用(Beta):适用于 macOS 和 Windows x64,可配置支持的本地智能体集成、检查会话中的召回和捕获事件,并将本地记忆和技能同步到 OpenViking。
VikingBot:基于 OpenViking 构建的 AI 智能体框架。官方 Docker 镜像捆绑 VikingBot,默认与服务器和控制台 UI 一起启动。
生产部署:在自有环境中运行开源服务器,采用 AGPLv3,无需激活密钥。服务器支持账户和用户隔离以及可选的资源 ACL。在暴露到 localhost 之外前配置认证。
商业版本:火山引擎托管并运营 OpenViking,个人和企业计划覆盖个人与团队使用,并提供开源部署的迁移工具。BYOC 或离线环境版本增加分布式部署和官方支持,通过许可证密钥激活。
适用场景
- 需要跨会话记忆的编码智能体。
- 需要将知识库、用户偏好和任务技能统一管理的智能体应用。
- 需要可检查、可编辑记忆而非黑盒嵌入的开发者。
- 需要目录级语义检索以减少 token 消耗的 RAG 场景。
限制
- 自行部署需要 uv、Python 3.10+ 以及提供嵌入模型和 VLM 的模型提供商。
- 插件安装器需要 macOS 或 Linux、Node.js 18+ 和 curl;Windows 需使用桌面应用。
- 记忆在后台处理,刚说出偏好后可能不会立即找到。
- 主项目采用 AGPLv3;crates/ov_cli 和 examples 采用 Apache 2.0;examples/hermes-plugin 保留 MIT 许可。禁止整体重写并重新开源本项目;将全部或大部分项目代码翻译为另一种编程语言需事先获得火山引擎书面授权。
- 商业托管服务前 50 个文件免费,后续计划与限制参见服务文档。
评估与论文
OpenViking 0.3.22 在长对话用户记忆(LoCoMo)和多轮智能体任务(tau2-bench)上进行了评估。记忆评估使用 Doubao 2.0 Pro 作为 VLM,Doubao-embedding-vision-251215 作为嵌入模型。用户记忆(LoCoMo):使用 OpenViking 后,三种智能体集成均达到 80–83% 准确率,而原生记忆为 24–57%,输入 token 减少 34.3–91.0%,查询延迟降低 58.45–66.10%。智能体体验(tau2-bench):经验记忆使任务成功率在零售场景提升 +6.87pp,航空场景提升 +11.87pp。
相关论文包括 VikingMem、Directory-Aware Query and Maintenance in Vector Databases、VikingRAG。
社区与贡献
文档:docs.openviking.ai;博客:blog.openviking.ai;聊天:Lark、微信、Discord、X。欢迎提交 bug 修复和新功能,参见 CONTRIBUTING.md。安全与隐私参见 SECURITY.md。