Feb, 2024

通过上下文敏感语法的高效左右商运算对编码语言模型进行约束解码

TL;DR本文介绍了一种增量解析器,该解析器能够早期拒绝语法错误的代码,并高效地检测符合填充中间任务的完整程序。我们开发了一种基于任意无上下文文法的左右商的 Earley 风格解析器,并将增量解析和商操作扩展到许多常见编程语言文法中的若干上下文敏感特性。这些方法的结果是一种高效、通用且可靠的左右商解析方法。为了验证我们的理论和特定设计决策的实际有效性,我们在 Python 3 的填充中间完成任务的特别困难情况下进行了方法评估。结果表明,受限生成可以极大地减少推荐代码中的语法错误的发生。