JSON Whisperer: Efficient JSON Editing with LLMs

📄 arXiv: 2510.04717v1 📥 PDF

作者: Sarel Duanis, Asnat Greenstein-Messica, Eliya Habba

分类: cs.CL

发布日期: 2025-10-06

🔗 代码/项目: GITHUB


💡 一句话要点

JSON Whisperer:利用LLM高效编辑JSON,通过生成diff补丁而非完全重构。

🎯 匹配领域: 支柱一:机器人控制 (Robot Control) 支柱九:具身大模型 (Embodied Foundation Models)

关键词: JSON编辑 大型语言模型 diff补丁 EASE编码 数组操作

📋 核心要点

  1. 现有LLM编辑JSON的方法效率低,每次修改需完全重构JSON,计算成本高昂。
  2. JSON Whisperer通过生成RFC 6902 diff补丁,仅表达必要修改,避免完全重构。
  3. EASE将数组转换为字典,解决LLM在数组操作中索引偏移跟踪的难题,提升编辑质量。

📝 摘要(中文)

大型语言模型(LLMs)可以通过自然语言命令修改JSON文档,但现有方法每次编辑都需要重新生成整个结构,导致计算效率低下。我们提出了JSON Whisperer,一个使LLMs能够生成RFC 6902 diff补丁的框架,该框架仅表达必要的修改,而不是完整的文档。我们发现了基于补丁编辑的两个关键挑战:(1) LLMs在生成孤立补丁时经常遗漏相关的更新,(2) 数组操作需要跟踪跨操作的索引偏移,而LLMs在这方面表现不佳。为了解决这些问题,我们引入了EASE(显式寻址序列编码),它将数组转换为具有稳定键的字典,消除了索引算术的复杂性。我们的评估表明,使用EASE生成补丁可以减少31%的token使用量,同时将编辑质量保持在完全重构的5%以内,尤其是在复杂指令和列表操作方面。

🔬 方法详解

问题定义:现有方法在利用LLM编辑JSON文档时,每次修改都需要重新生成整个JSON结构,导致计算效率低下,尤其是在处理大型JSON文档或需要多次迭代修改时,计算资源的浪费非常显著。此外,LLM在处理数组操作时,难以准确跟踪索引变化,容易引入错误。

核心思路:JSON Whisperer的核心思路是让LLM生成RFC 6902 diff补丁,而不是完整的JSON文档。Diff补丁只包含JSON文档的必要修改,因此可以显著减少LLM需要处理的token数量,从而提高编辑效率。同时,引入EASE编码,将数组转换为字典,消除索引算术的复杂性,提高LLM处理数组操作的准确性。

技术框架:JSON Whisperer框架主要包含两个核心模块:补丁生成模块和EASE编码模块。补丁生成模块负责接收自然语言指令和原始JSON文档,并使用LLM生成对应的RFC 6902 diff补丁。EASE编码模块负责将JSON文档中的数组转换为字典,以便LLM更好地处理数组操作。整个流程是:首先,对输入JSON进行EASE编码(如果包含数组);然后,将编码后的JSON和自然语言指令输入LLM,生成diff补丁;最后,将补丁应用到原始JSON文档上,得到修改后的JSON文档。

关键创新:JSON Whisperer的关键创新在于提出了基于diff补丁的JSON编辑方法,以及EASE编码方案。基于diff补丁的方法避免了完全重构JSON文档,显著提高了编辑效率。EASE编码方案通过将数组转换为字典,消除了索引算术的复杂性,提高了LLM处理数组操作的准确性。

关键设计:EASE编码的关键设计在于如何将数组转换为具有稳定键的字典。论文中采用的方法是为数组中的每个元素分配一个唯一的键,例如元素的索引。在生成diff补丁时,LLM可以直接操作这些键,而无需考虑索引偏移。此外,论文还对LLM进行了微调,使其能够更好地生成RFC 6902 diff补丁。具体的微调策略和损失函数细节未知。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

实验结果表明,使用EASE生成补丁可以减少31%的token使用量,同时将编辑质量保持在完全重构的5%以内。尤其是在处理复杂指令和列表操作时,JSON Whisperer的优势更加明显。这些结果验证了JSON Whisperer的有效性和高效性。

🎯 应用场景

JSON Whisperer可应用于各种需要频繁编辑JSON数据的场景,例如配置管理、数据转换、API开发等。它可以显著提高开发效率,降低计算成本,并减少人工干预。未来,该技术可以扩展到其他结构化数据的编辑,例如XML、YAML等,具有广阔的应用前景。

📄 摘要(原文)

Large language models (LLMs) can modify JSON documents through natural language commands, but current approaches regenerate entire structures for each edit, resulting in computational inefficiency. We present JSON Whisperer, a framework that enables LLMs to generate RFC 6902 diff patches-expressing only the necessary modifications-rather than complete documents. We identify two key challenges in patch-based editing: (1) LLMs often miss related updates when generating isolated patches, and (2) array manipulations require tracking index shifts across operations, which LLMs handle poorly. To address these issues, we introduce EASE (Explicitly Addressed Sequence Encoding), which transforms arrays into dictionaries with stable keys, eliminating index arithmetic complexities. Our evaluation shows that patch generation with EASE reduces token usage by 31% while maintaining edit quality within 5% of full regeneration with particular gains for complex instructions and list manipulations. The dataset is available at: https://github.com/emnlp2025/JSON-Whisperer/