众力资讯网

阿里Zvec开源 zg,给Agent重做一遍本地搜索

阿里 Zvec 团队开源了一个Agent 搜索工具:zg(zvec-grep)。
它想解决一个 Agent 常见的问题:当 Agent 知道自己想找什么,却不知道它在代码和文档里到底叫什么时,该怎么搜?

比如用户问一个问题,对于 rg 来说,如果不知道函数名字,Agent 只能不断猜 theme、preference、restore、startup……
每猜一次都是 Tool Call,每打开一个错误文件,都在浪费 Context 和 Token。

zg 的思路是把 Semantic Search、BM25、Hybrid Search 和 rg 放在一起。
意图模糊时,用 Semantic Search 探索;出现明确术语后,用 BM25 收缩;已经知道函数名时,直接用 rg 精确定位。

所以它真正做更像:Explore -> Narrow -> Verify

另一个值得关注的点,是 zg 并没有简单地把所有文件每隔几百 Token 切成 Chunk。
代码有函数、类、Symbol,Markdown 有 Heading 和 Section,zg 会尽可能保留这些结构,再建立索引。
因为 Agent 真正需要的不是“10 个相似 Chunk”,而是快速找到下一步最值得看的那个位置。

zg 的 Benchmark 不只看 Recall 和搜索速度,而是开始看 Tool Calls、Input Tokens、Agent Time 和最终任务效果。按照团队公布的测试,在 SWE-QA-Bench 上,使用 zg 后 Tool Calls 减少超过 50%,Input Tokens 接近减半;在 BrowseComp-Plus 上,Input Tokens 减少 37.56%,Tool Calls 减少 43.52%,Agent Time 减少 38.58%。

一个好的搜索工具,不只是“搜得准”,而是要让 Agent 少走弯路。

未来 Agent 的差异,可能不仅在模型够不够聪明,还在于它是否知道:什么时候语义探索,什么时候关键词匹配,什么时候精确验证,以及什么时候已经找够了,可以停止搜索。

#Zvec #zg #RAG #ContextEngineering #AgentHarness #SemanticSearch #向量搜索 #CodingAgent #AI反常识howto