本文是LLM系列文章,针对《Verified Multi-Step Synthesis using Large Language Models and Monte Carlo Tree Search》的翻译。
摘要
我们提出了一种使用蒙特卡罗树搜索(MCTS)来指导大型语言模型(LLM)在Dafny、Lean和Coq中生成经过验证的程序的方法。我们称之为VMCTS的方法通过在每一步检查部分程序来利用搜索算法中的验证器。与LLM先验相结合,验证器反馈提高了开源模型的综合能力。在一组五个已验证的编程问题上,我们发现在四个问题中,即使重新采样一个小时的解决方案,基本模型也无法解决问题,VMCTS可以在6分钟内解决问题。VMCTS的基本模型甚至与添加了插件和多次重试的ChatGPT4相比具有竞争力。我们的代码和基准测试在https://github.com/namin/llm-verified-with-monte-carlo-tree-search可用.
1 引言
2 相关工作
3 方法:VMCTS
4 变体
5 结果
6 讨论
我们已经证明,相对较弱的语言模型可以通过指导在每个步骤验证部分程序的搜索过程来可靠地生成经过验证的代码。我们的技术适用于由相关子问题组成的多步骤问题。我们的技术可以适用于给定接口和规范的设置,并且在每一步都通过包含断言或证明的附加代码来验证代码。我们的技术也适用于语言识别提示,将
文章介绍了一种名为VMCTS的方法,结合大型语言模型(LLM)和蒙特卡洛树搜索(MCTS),在Dafny、Lean和Coq中生成验证过的程序。VMCTS通过验证器在每一步检查部分程序,增强LLM的综合能力。实验表明,VMCTS在解决已验证的编程问题上表现出色,甚至与增强版ChatGPT4竞争。未来的研究方向包括减少搜索的盲目性,通过更紧密地耦合LLM和验证器。
已下架不支持订阅
1万+

被折叠的 条评论
为什么被折叠?



