21. #IT那些事儿# OpenViking + OpenClaw 将会是王炸组合。OpenViking(火山引擎开源:github.com/volcengine/OpenViking) + OpenClaw(开源地址:github.com/openclaw/openclaw)的组合 = 文件系统协议 (OpenViking) + 向量与关键词混合检索 (OpenClaw) + 自动多层加载 (OpenViking) 的组合一、各自的优势OpenViking(中文介绍:github.com/volcengine/OpenViking/blob/main/README_CN.md)- 核心定位:云原生数据湖存储加速器。- 目标:在大数据和AI场景下,优化对海量数据(特别是对象存储中的数据)的访问性能。而OpenClaw采用向量检索 + 关键词匹配的双重方案:- 向量检索:实现语义匹配,能理解同义表达(如搜索"认证漏洞"也能匹配到"认证问题")- 关键词匹配:实现精确短语查找,锁定核心内容与需要独立部署向量数据库的方案不同,OpenClaw的实现非常轻量:- 向量检索:直接基于SQLite实现,无需额外部署复杂的向量数据库- 关键词检索:依托SQLite的FTS5(全文搜索)扩展插件实现但是要注意,SQLite 向量检索不是“无限扩展”,它的真实情况是:- 10 万级向量:舒服- 100 万级:开始抖- 1000 万级:不适合所以:OpenClaw 的“工作区间”是:- Agent 私有知识- 企业部门级资料- 单用户或小团队的多模态数据- ❌ 而不是公司级别的多模态数据对 OpenClaw 来说,世界就是文件、附件、日志、快照、索引、任务产物。那么 OpenViking 提供的是:- 一个看起来像本地- 但实际上背后是数据湖- 并且自动做冷热管理这对一个 7×24、要跑多年、不断积累历史的 Agent OS 是刚需级能力。而 OpenViking+OpenClaw 的组合可以理解为 “OpenViking 修了一条智能高速公路,OpenClaw 在上面跑最先进的物流车队”,两者结合可以让个人或团队级 AI Agent 不再受限于本地存储与 IO,能长期运行、持续积累、而不牺牲隐私与控制权。二、组合架构设想1.数据湖作为唯一信源:你的所有原始的图片、视频、PDF、音频等非结构化数据,统一存放在对象存储(如S3/TOS)中,构成数据湖。2.OpenViking 作为“智能数据接入层”:对下,它接管了对数据湖的访问,通过其缓存和预取能力,让后续的数据读取速度提升数个量级。对上,它以一个标准POSIX文件系统或FUSE挂载点的形式提供服务。这对于OpenClaw 的索引构建过程至关重要。3.OpenClaw 作为“智能检索大脑”。“文件系统协议 (OpenViking) + 向量与关键词混合检索 (OpenClaw) + 自动多层加载 (OpenViking)” 这个组合,精准地命中了当前AI和大数据基础设施的几个关键痛点:数据墙、IO瓶颈、非结构化数据价值挖掘。它们组合后,能够为 “多模态AI应用”(如海量图片/视频搜索、企业知识库问答、音视频内容理解)提供一个从底层存储、高速接入到顶层智能体检索与召回的一站式后端解决方案。三、场景场景 1:多模态搜索引擎(最典型、最强)场景描述- 数据:图片 / 视频 / 音频 / PDF- 存储:对象存储(S3 / TOS)- 用户通过聊天工具给 OpenClaw 个人智能体助理下达需求:- “找和这张图相似的视频”- “搜索提到某事件的会议录音”- “从几百万文档中定位相关段落”OpenViking 此时在干什么:- 把 对象存储 → 本地文件系统语义- 对 热数据、索引扫描、回查文件 做缓存和预取- 避免每一次检索结果都打到远端对象存储OpenClaw 此时在干什么:- 建立:- 向量索引(语义)- 关键词索引(精确)- 输出候选结果集合组合的价值:检索是秒级,回看原始文件不再是灾难级 IO。场景 2:媒体 / 视频资产管理场景描述- 电视台 / 短视频平台 / 自媒体集团 有:- 海量历史素材- 多种格式- 高分辨率视频实际需求- “找和这个镜头相似的素材”- “搜索某人物出现过的所有片段”- “快速预览”组合的工程优势- 索引只存 embedding + metadata- 原视频仍在对象存储- 热素材被 OpenViking 缓存在本地结论:OpenClaw 是一个本地优先、能长期运行并持续积累的 Agent OS;OpenViking 为它提供了可扩展的多模态数据与 IO 底座。两者结合,使个人或团队级 AI Agent 不再受限于本地存储与访问性能,能在保护隐私与控制权的前提下,稳定运行多年。四、具体的组合方式:①部署形态:┌──────────────────────┐│ Agent App ││ (Orchestrator / LLM) ││ ││ ┌──────────────────┐ ││ │ OpenClaw SDK │◄┼───── semantic / keyword query│ └──────────────────┘ ││ ▲ ││ │ Context ││ ▼ ││ ┌──────────────────┐ ││ │ OpenViking API │◄┼───── file-like context API│ └──────────────────┘ ││ │ │└──────────┼───────────┘ ▼ Object Store / FS / KV / Vector注意:OpenClaw 和 OpenViking 是两个独立服务,不是库级耦合。②上下文目录规范:/context├── agents/│ └── {agent_id}/│ ├── L0/│ │ └── sessions/{session_id}/│ │ ├── messages/│ │ ├── tool_calls/│ │ └── scratchpad.md│ ├── L1/│ │ ├── summaries/│ │ └── recent_refs/│ ├── L2/│ │ ├── long_term_memory/│ │ ├── knowledge/│ │ └── compressed_sessions/│ └── skills/│ ├── web_search.md│ ├── calendar.md│ └── db_query.md└── resources/├── documents/├── images/└── tools/- L0 = 强时效、强相关、强 IO- L1 = 最近总结、弱原始数据- L2 = 冷数据、不可频繁扫描