尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
OpenViking 深入浅出:用 viking:// 虚拟文件系统给 AI Agent 装上省 token 的上下文底座
1. 引言Agent 上下文管理的三座大山把 LLM 真正变成能干活的 Agent难点往往不在模型本身而在「怎么把该给它的信息塞进上下文」。一个靠谱的 Agent 通常需要三类上下文长期记忆跨会话记住用户偏好、历史决策、任务结论知识库RAG按需检索业务文档、FAQ、内部规范技能包一组可调用的工具、脚本、API 说明。如果把这些内容全都塞进 prompttoken 会爆炸如果塞得太少Agent 又会「失忆」。更麻烦的是这三类上下文管理方式各不相同工程上只能各写一套维护成本很高。volcengine/OpenViking 给出的解法是把问题抽象成一句话把记忆、RAG、技能统一映射成一个虚拟文件系统Agent 像读文件一样按需取用上下文。2. 核心思路一切皆文件OpenViking 的设计哲学非常 Unix既然操作系统能把设备、进程、网络都抽象成文件那 Agent 的上下文为什么不行在 OpenViking 里所有上下文源都被统一为一个viking://虚拟文件系统VFSviking:// ├── memory/ # 长期记忆 │ ├── preferences.md │ ├── decisions/2026-08.md │ └── summary/latest.md ├── knowledge/ # 知识库 / RAG │ ├── docs/ │ ├── faq.md │ └── index.json └── skills/ # 技能包 ├── analysis/ ├── report_gen/ └── api/weather.md不管底层是向量数据库、关系库还是对象存储对 Agent 来说都是「路径 文本」。LLM 天然擅长读文件、按路径找内容这套抽象几乎不用额外解释就能让模型学会使用。这样做有三个直接收益一个心智模型读记忆、查知识、调技能全部统一成「读文件」一套访问接口统一权限、审计、版本、缓存天然可分片文件天然支持按需加载为省 token 打下基础。3. viking:// 虚拟文件系统的分层懒加载OpenViking 省 token 的关键在于它把文件内容拆成L0 / L1 / L2三层按「摘要 → 正文 → 附件」的粒度渐进加载。层级内容token 成本加载时机L0目录树、文件名、一句话摘要极低初始阶段全量注入L1文件正文 / 关键片段中等Agent 主动open/read时L2大附件、完整文档、二进制描述较高明确需要时才拉取工作流程大致是Agent 启动时先拿到 L0 的目录树 摘要知道「有哪些可用的记忆、知识和技能」token 消耗很小它判断需要哪个文件发起一次viking://读请求再加载 L1 正文只有碰到超大文档或附件时才按需展开 L2。这样 Agent 既保持了「知道自己有什么」的全局视野又不必为不相关的内容付费。相比「一次性把 RAG top-k 结果全灌进去」这种先看目录、再读正文的懒加载模式能把无关 token 显著降下来。4. 快速上手用 Python 映射记忆 / RAG / 技能下面是一段最小化示例展示 OpenViking 如何把三类上下文映射进虚拟文件系统。请以项目仓库最新 README 为准调整导入与类名。fromopenvikingimportVikingContext,MemorySource,KnowledgeSource,SkillSource# 1. 创建 Agent 上下文底座ctxVikingContext()# 2. 长期记忆映射成 memory/ 目录ctx.mount(MemorySource(backendsqlite,db_path./agent_memory.db,mount_pointviking://memory,))# 3. 知识库接入向量检索按查询动态生成 knowledge/ 下的文件ctx.mount(KnowledgeSource(backendvector,collectioncompany_docs,mount_pointviking://knowledge,summarizeTrue,# 自动生成 L0 摘要top_k5,))# 4. 技能包把工具说明与可执行脚本映射成 skills/ 目录ctx.mount(SkillSource(registryskills.yaml,mount_pointviking://skills,))# 5. 注入到 prompt默认只注入 L0 目录树与摘要system_promptctx.render(model0)print(system_prompt)# viking://memory/preferences.md —— 用户偏好摘要偏好简洁回答...# viking://skills/analysis/ —— 数据分析技能读取 CSV 并产出报告...# 6. Agent 按需读取 L1 内容contentctx.read(viking://memory/preferences.md)print(content)# 返回该文件的完整正文在这个模型下render(model0)只把目录和摘要放进 prompt真正的正文要等 Agent 通过工具调用ctx.read(...)才展开。记忆、知识库、技能三套体系被收敛成了同一套「挂载 读取」流程。5. 为什么懒加载真的能省 token省 token 不是靠压缩而是靠改变注入时机避免全量灌入传统做法是把 RAG 检索到的若干段落全部拼进 prompt哪怕一半与当前任务无关L0 摘要先行Agent 先看到「我有哪些知识」再有针对性地读取减少盲目检索长文档只取所需遇到 50 页的规范文档先读目录L0/L1命中具体条款再展开 L2跨轮复用已加载的文件可在会话内缓存多轮对话只重复支付必要的 token。对长会话、多工具、大知识库的 Agent 场景这套「目录—正文—附件」的分层策略能把上下文预算花在刀刃上。6. 适用场景与边界OpenViking 特别适合以下场景需要长期记忆的客服 / 个人助理 / 智能体挂载多个知识库、希望统一检索入口的企业 Agent拥有大量工具/技能、需要让模型先「浏览目录再选择」的复杂工作流。同时也要注意viking:// 是逻辑抽象实际读写仍受底层存储性能约束L0 摘要质量直接影响 Agent「找不找得到文件」摘要生成策略需要结合业务调优。7. 总结OpenViking 的价值在于把「Agent 上下文管理」从一个工程堆叠问题收敛成了一个虚拟文件系统问题记忆、知识库、技能统一为viking://路径L0/L1/L2 分层懒加载把 token 从「一次性灌入」变成「按需取用」LLM 只需学会「读文件」就能自然获得长期记忆、RAG 检索与技能调用能力。如果你的 Agent 正被越来越长的 prompt 和越来越复杂的上下文管理拖累值得把「一切皆文件」这个思路认真试一次。
RELATED

相关推荐

微微操作,免费调用deepseek,元宝 API

微微操作,免费调用deepseek,元宝 API

起因:一个很朴素的烦恼 你是不是也这样:想问一个技术问题,习惯性地打开三四个 AI 网页——腾讯元宝问一遍,DeepSeek 再问一遍,来回切标签页对比谁答得更靠谱。 烦是真烦,但去接一堆 API Key、充值、管理密…

📅 2026/10/16 13:55:10
企业微信二次开发:多实例账号接入的架构设计与实践

企业微信二次开发:多实例账号接入的架构设计与实践

昨天碰到个融了 A 轮的 SCRM SaaS 团队,他们的 CTO 亲自在群里找我求救:“兄弟,我们系统原本挂了一个企微机器人,自动拉群跑得挺好。昨天销售部一口气加了 50 个客服微信号进去,结果全乱套了!A 销售的客户在…

📅 2026/10/16 14:35:28
货运搬家小程序从0到1(四):微信登录,从 mock 到 code2session 的平滑切换

货运搬家小程序从0到1(四):微信登录,从 mock 到 code2session 的平滑切换

上篇计价引擎跑通。这篇解决所有小程序项目的第一只拦路虎:登录。本地开发没有正式 appid、没配合法域名,怎么让业务先跑起来?微信登录的标准流程 先复习官方流程,只有三步: 小程序端 uni.login() 拿到临时 code→ 后端…

📅 2026/10/19 2:30:10
MORE NEWS

更多资讯

📰

扩散模型局部风格控制:实现内容保真与风格注入的精准解耦

1. 项目概述:让AI画图真正听懂“我要什么风格”的底层突破最近在好几个图像生成社区里,看到不少同行反复提到一个词:“Local Content-Style Control”——不是泛泛而谈的“整体换风格”,而是在一张图里,让天空变成水彩…

📰

STM32综合测评B类题固件:ADC/DMA采样、校准与PID闭环

简介:面向备战全国大学生电子设计竞赛综合测评的嵌入式选手,这份2023年B题国一方案围绕同轴电缆长度与终端负载检测装置展开,主控采用梁山派开发板,开发链为STM32CubeMX、CLion与OpenOCD。方案给出TDR时域反射法测长(误…

📰

分布式计算核心技术解析与大数据实践

1. 分布式计算在大数据领域的核心价值 2008年我第一次接触Hadoop集群时,单台服务器处理TB级数据需要72小时,而8节点集群仅用3小时就完成了相同工作。这种指数级的效率提升正是分布式计算的核心价值所在。如今随着数据量爆炸式增长,单机处理能…

📰

全双工语音模型的话轮控制:解决AI抢话与冷场问题

1. 项目概述:当两个“全双工”语音模型开始“抢话”与“让话” “Coupled but Late: Turn-Taking Between Full-Duplex Speech Models in Unscripted Dialogue”——这个标题初看像一篇冷门的计算语言学论文,但拆开来看,它直指当前语音AI落地…

📰

多模型共识机制提升教育AI诊断准确率

1. 项目概述:当多个大模型“坐在一起”诊断学生数学学习卡点 你有没有遇到过这种情况:学生在解一道分数加减法题时反复出错,辅导老师看了几遍对话记录,觉得是通分规则没掌握;但换个老师看,却认为问题出在符…

📰

Diagram设计不是画图,而是结构化建模思维

1. 项目概述:这不是画图,是用结构语言思考问题“diagram-design”这个词组乍看像一个工具名或软件功能,但在我带过的十几个跨领域项目里,它从来不是指“用PPT拉几个箭头”,而是一套把模糊想法翻译成可验证、可协作、可…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬