AI Agent效率新解:NoKV文件系统语义省45% token

核心实验结论
一项针对AI智能体(Agent)的对比实验显示,采用文件系统形态的接口来暴露后端数据,相比原生SQL接口,能够让Agent减少45%的token消耗,同时降低39%的使用成本,且任务准确率保持在较高水平。这一发现为优化AI Agent的工作效率提供了新的思路。
实验背景与项目介绍
该实验由相关团队通过开放基准测试完成,测试使用了同一份真实的机器学习实验追踪数据集,包含875个训练、采样和评估任务,涵盖元数据、参数、80.6万行指标数据、实验产物、git状态以及原始的标准输出和错误输出日志。实验选用了相同的大语言模型,针对同一组任务,分别通过原生SQLite/SQL接口和NoKV的文件系统命名空间接口进行调用,唯一变量就是接口形态。
NoKV是一款面向AI智能体工作空间的元数据控制层,它将实验任务、日志、检查点、实验产物等内容整合到文件系统形态的命名空间中,让Agent可以像人类工程师一样通过类似ls、grep、read的命令来查找线索、查看证据并引用具体行号。目前,NoKV已被收录进CNCF Cloud Native Landscape的AI Native Infra / Storage分区,其早期自研的Go原生存储引擎也曾被CMU的Database of Databases收录,当前项目主线已演进为Rust实现的智能体工作空间文件系统产品线。
为什么Agent更适配文件系统接口
对于人类工程师来说,完成实验复盘任务的自然路径是进入目录、列出任务、搜索相关字段、打开必要日志并引用证据,也就是ls → grep → read → 引用行号的流程。但如果让仅支持SQL接口的Agent来完成同样的任务,它需要先理解数据库表结构、关联关系、日志blob的映射方式等,这会带来大量的前置认知成本。每多读一段数据库schema、每一次错误的查询尝试、每一次将整段日志加载进上下文,都会消耗不必要的token,而且错误的运行并不会减免计费。
研究人员指出,决定Agent token效率的因素不仅包括模型和提示词,还包括其面对的操作界面。随着Fable 5等强模型的推出,快速搭建AI Agent变得愈发简单,真正拉开不同Agent系统差距的,将是其在日常任务中的token使用效率:单次任务需要读取多少上下文、经历多少轮调用、产生多少错误、消耗多少token。
事实上,当前的大语言模型在训练数据、后训练任务和工具生态中,已经形成了一套稳定的工作模式:进入目录→列出文件→搜索关键词→读取局部内容→引用具体行号。互联网上大量的shell、Unix工具、Git操作、日志排查、代码仓库浏览的语料,以及近两年代码智能体的爆发式发展,都在不断强化模型对目录树、文件路径、grep、cat、diff和行号的使用能力。
文件系统语义对Agent友好的核心,并非依赖磁盘存储本身,而是它提供了渐进式披露的交互方式:先通过ls、stat、catalog等命令低成本发现可用资源,再按需读取目标内容,搜索可以限定范围,且路径本身就是稳定的操作句柄。相比之下,SQL更像是要求Agent先理解完整的数据库地图,再一次性写出正确的查询语句,对于明确的结构化聚合任务SQL确实高效,但对于“先定位样本组、再查询日志、最后引用证据”的复合探索任务,前置的认知成本会显著提升。
近两年,多家大模型公司和智能体开发者都在趋近这一结论:比如Letta的Agent记忆基准测试中,将对话历史保存为文件的Agent在长对话记忆任务上表现出色;Anthropic在MCP代码执行工具的设计中,将工具组织为TypeScript文件树而非平铺的上下文,将代表性工作负载的token消耗从15万降至2000;OpenAI的工具搜索文档也建议将延迟加载工具整合到命名空间或MCP服务器中,让模型按需搜索和加载。这些案例都指向同一个模式:Agent更擅长在有命名、有层级、可局部打开的空间中进行搜索。
实验设计与执行细节
为了确保实验的严谨性,研究人员尽可能控制变量,使用了来自Yanex(一个轻量Git感知的开源Python实验追踪系统)的真实运行数据,由一位曾任MongoDB机器学习研究负责人的研究者通过私下合作提供。实验针对三种典型任务展开,每个接口、每个任务重复10次,共完成100次无状态的独立运行,每次运行都使用全新的进程,仅提供系统消息、接口说明和任务提示,不保留上一次的对话上下文。成本按照模型公开定价计算,并逐次记录运行遥测数据。
核心实验结果
实验的核心结果显示,文件系统形态的NoKV命名空间接口,相比原生SQL接口,在复合探索任务上的优势尤为明显。三个复合任务的prompt token总量,SQL版本为127450,而NoKV版本仅为53300,后者约为前者的2.39倍;成本方面,SQL版本为0.0558美元,NoKV版本为0.0286美元,差距接近两倍。这说明Agent不仅需要更多的工具,更需要一个适合自身“查找信息”的工作空间。
心智负担的显著降低
除了直接的token和成本节约,研究人员还观察到一个重要的现象:使用NoKV接口时,Agent的内部推理token消耗也明显更少。很多人在计算token成本时,仅关注输入prompt和输出回答的长度,但对于具备推理能力的模型来说,每一次工具调用都会消耗一部分token用于思考:比如当前看到了什么、下一步应该查询哪里、字段之间的关联关系、结果是否足够回答问题。
如果接口要求Agent先理解复杂的schema、猜测关联路径、拼接blob引用,模型的注意力会被大量消耗在“寻找路径”而非真正的推理上。文件系统接口的路径本身就是稳定句柄,目录天然限定了搜索范围,grep返回的是带有位置的证据,find和aggregate可以将过滤、排序、限制和投影下推给系统,让Agent不需要在脑中反复重建数据的位置,而是可以顺着路径逐步缩小搜索空间。
这不仅减少了token消耗,还降低了Agent的“心智负担”,让模型可以将更多的有效注意力留给真正的任务判断、归纳和生成。此外,清晰的工作空间接口还能减少注意力漂移的问题,避免模型被过多的无关信息带偏,或是在多轮调用后忘记初始任务。
详细任务案例分析
虽然平均值显示了明显的差距,但不同类型的任务表现有所不同。在简单的单发结构化查询任务中,SQL接口依然表现出色,比如某个排行榜类任务,仅需要一条SELECT语句即可完成,SQLite接口仅消耗约4.8k token,而NoKV接口消耗约9.3k token,这是因为关系型接口天生擅长明确的聚合和排序任务。真正拉开差距的是复合探索任务,我们可以通过三个具体案例来详细说明:
案例一:扫参报告
任务要求找出验证集损失最低的5个已完成训练任务,并报告其学习率、batch size、标准输出大小和git状态。在NoKV接口上,Agent先通过catalog命令发现可用字段,再通过find命令将过滤、排序、限制和投影下推给系统,100%正确完成任务,仅消耗约7.9k token。而在SQL接口上,Agent需要在80.6万行的指标表上进行每个任务的最小值聚合,再关联参数、产物和git状态,有一半的次数会写出错误的查询,即便失败依然会消耗token,平均消耗约23.6k token。这说明很多Agent的错误并非模型不会思考,而是接口要求其在找到答案前跨越大量的间接层,SQL的严谨组织并不等同于对Agent的低成本友好。
案例二:checkpoint溯源
任务要求找出某个数据集所有TabDiff采样任务加载的checkpoint文件和模型参数量,这些信息仅存在于标准输出日志中。在NoKV接口上,一次递归的grep即可找到相关的任务目录,目录路径本身就是后续操作的句柄,随后在这些目录内继续搜索指定关键词即可。而在SQL接口上,即便提供了grep_blob工具,Agent依然需要先解开参数、产物、blob引用之间的间接关系,再对多个blob分别搜索,很多时候会将整段标准输出加载进上下文,虽然答案可能正确,但token成本显著更高。需要说明的是,NoKV接口在这个任务上10次中有4次失败,正确率为60%,而SQL接口正确率为100%,但按每个正确答案的成本计算,NoKV依然更便宜(0.0297美元 vs 0.0322美元)。这并非证明NoKV永远更优,而是说明接口形态会改变成本结构,SQL在这个任务上更稳定,而NoKV的平均成本更低,仍需在可靠性上进行工程优化。
案例三:事故分诊
任务要求列出所有未完成或取消的任务的状态、错误输出大小、是否包含KeyboardInterrupt异常,以及最后一次出现的行号。NoKV接口的优势非常明显:通过一次find命令即可获取任务组和错误输出大小,再通过限定目录的grep返回带有行号的匹配结果,行号本身就是天然的审计证据。而SQL接口虽然也能完成任务,但成本更高,因为行号并非关系型投影的原生概念,Agent需要进行额外的字符串和换行计算,或是依赖额外工具。
综合三个案例来看,NoKV的文件系统接口赢在四个关键点:一是路径就是操作句柄,找到任务和读取日志在同一个地址空间中;二是搜索可以递归或限定范围,同一个grep既能全局发现线索也能局部提取证据;三是行号天然适合引用,审计、调试和事故分析都需要明确的证据位置;四是下推操作减少对话轮次,将过滤、排序等操作整合到一次调用中,减少上下文回灌和重复计费。
架构优化的核心思路
很多人会误解这一研究结论,认为是要用文件系统替代数据库,但实际上并非如此。数据库依然应该负责数据的可靠性、结构化查询、事务和持久化;对象存储依然适合存储大文件、检查点、日志和二进制内容;业务API依然负责权限和领域逻辑。真正需要重新思考的是,应该为Agent暴露什么样的后端视图形态。
对于人类工程师来说,我们可以在脑中完成跨系统的导航,比如SQL、对象存储key、日志blob、临时脚本等,但Agent的上下文窗口和工具调用都有成本,每次让其猜测schema、查找id、拼接引用,都是将预算花在“寻找路径”而非“回答问题”上。更合理的架构应该分为两层:底层继续使用数据库、对象存储和API;上层则维护元数据、路径、版本、权限、索引和引用关系,并为Agent提供一个类POSIX语义的友好工作空间,支持路径寻址、目录列举、按需读取、局部搜索、权限边界、原子发布和可审计引用等功能。NoKV想要做的,就是这一层统一的命名空间和元数据控制层,为Agent提供其更偏好的交互方式。
广泛的应用场景
这类文件系统语义的工作空间,最直观的应用场景是实验追踪和观测,但并非仅此而已。任何高度依赖大量文件、日志、报告、模型、合同、多媒体内容、检查点等外部产物的智能体系统,也就是产物密集型(artifact-heavy)Agentic系统,都会遇到类似的问题。
比如训练、评测和推理系统会产生大量的任务、追踪数据、日志、模型检查点、指标和配置,用户经常会询问“哪组配置最优”“这批失败任务为什么取消”“这个采样任务加载了哪个模型”,这些问题往往需要在结构化指标、非结构化日志和产物元数据之间反复探索。法律咨询类代理系统也是典型的场景:用户上传合同、判例、尽调材料和邮件附件,让Agent进行摘要、问答、风险提示和行动建议,系统的复杂性不仅来自大模型本身,还来自这些文件的元数据:来源、版本、权限、引用关系、解析状态、向量索引、审计记录、用户批注和任务输出等。如果这些元数据散落在对象存储、向量数据库、业务数据库、临时缓存和工作流组件中,没有统一的管理层,Agent每次工作都需要重新拼接上下文,徒增心智负担和token成本。
类似的场景还包括数据分析Agent(需要在笔记本、CSV、数据库结果、图表和报告之间引用)、多媒体Agent(管理原图、缩略图、转写文本、时间戳、向量表示和版本)、研发Agent(跨issue、PR、日志、CI结果、构建产物和部署记录定位问题)以及多Agent协作系统(共享中间产物、锁定版本、监听更新、回滚错误状态)。如果没有统一的工作空间,Agent会不断重复“重新发现世界”的过程,而如果提供稳定、可搜索、可快照、可审计的命名空间,Agent就可以将更多的token花在推理和产出上。
这也是为什么研究人员认为文件系统语义会重新变得重要——大语言模型已经被训练得非常擅长在这类空间中工作。如果越来越多的人意识到token是一种新型的计算单元,那么接口形态就会成为计算成本结构的重要组成部分,在实际业务场景中,Agent有限的token和注意力应该更多花在推理和任务执行上,而非定位和拼接上下文。
资料说明
文中涉及的公开事实均经过公开资料核查:NoKV的项目状态、DBDB收录情况、实验数据和基准数字、外部案例等均来自公开的项目文档、基准报告和官方文档。
塔猴是一个专注于为用户提供系统学习、内容创作与商业连接的AIGC综合服务平台,致力于为每一位AI探索者打造理想的创作、成长家园。在塔猴,你不仅可以学习众多AIGC类实战课程,获得与时俱进的AIGC技能和视野,还有机会获得长期商业合作和接单机会!点击进入:https://www.tahou.com/
AI生成内容提示:本文由人工智能辅助创作,内容仅供参考,不代表平台观点。请注意核实信息的准确性,并理性判断。




