小上下文窗口 + 知识图谱:仅序列化格式就将我的多跳准确率翻倍(对10种格式进行了基准测试)
摘要
对10种图序列化格式的基准测试表明,冗长格式会浪费令牌,而表格布局能提高准确率;作者构建了ISONGraph,这是一种专为LLM理解优化的属性图格式,令牌减少70%,采用MIT许可。
运行本地模型意味着每个令牌都很重要——当您将图上下文塞入RAG提示时,8K或16K的窗口很快就会填满。我对10种图序列化格式(JSON、GraphML、RDF变体、边列表等)在令牌计数和推理准确性上进行了基准测试,结果令我惊讶:
- 冗长格式大约浪费70%的令牌在纯语法上——花括号、引号、重复的键。在8K本地模型上,这意味着您的图预算比需要的要小约3倍
- 仅凭格式变化,多跳准确率就从约40%跃升至约80%——相同的图、相同的模型、相同的问题
- 表格/关系型布局(模型在训练中经常看到的模式)始终优于嵌套标记
基于这些发现构建了ISONGraph——一种专为LLM理解优化的属性图格式:令牌减少约70%,遍历准确率92%,可完全离线运行于本地模型。采用MIT许可,提供Python、JS/TS、Rust、Go、C++、C#实现。包含基准测试方法的仓库:github.com/isongraph/isongraph
好奇这里的人们在本地模型中使用什么格式处理图上下文——如果有人拥有某种不同格式胜出的问题集,我愿意用它来测试。
相似文章
我测试了基于AST的上下文图用于编码代理;以下是我发现的变化
实验表明,与宽泛的代码片段相比,基于AST的编码代理上下文图可以减少90%的令牌使用量,同时保持基础的准确性,建议采用混合方法来处理检索范围过窄的情况。
我们尝试了向量、抽象语法树(AST)以及粗暴地堆砌上下文以进行代码检索。带有大语言模型(LLM)生成语义的图结构效果最佳。以下是我们的经验总结。
作者们详细描述了他们在构建代码索引系统的经验,最终得出结论:使用大语言模型(LLM)生成语义的图检索方式在性能上优于向量嵌入和纯抽象语法树(AST)解析。他们将该系统开源,命名为 Bytebell,它利用 Neo4j 存储语义上下文,以实现高效且精确的代码检索。
VisKG-LM: 将知识图谱编译为视觉记忆用于多项选择题问答
本文提出VisKG-LM,一种将知识图谱编译为视觉记忆以进行高效多项选择题问答的方法,通过将图编码与语言推理解耦,在基线上实现性能提升。
通过基于知识图谱的数据生成实现精确的文本到Cypher转换
本文提出了一种合成数据生成方法,用于微调小型LLM,将自然语言转换为属性图的Cypher查询,在实现本地部署和数据主权的同时,达到了与大型专有模型相竞争的性能。
更少的上下文,更高的准确性:一种用于LLM代理的双时态记忆引擎,其中精简检索的上下文胜过了完整历史
本文介绍了Engram,一个开源的用于LLM代理的双时态记忆引擎,它通过检索一个紧凑的上下文片段(约9.6k token),在LongMemEval上以混合读取路径融合稠密、词汇、图和时间信号,比完整历史基线(79k token)高出10.4个准确率点。