中文

面向高质量 Solidity 代码生成的偏好驱动方法

软件工程 2025-10-01 v3

摘要

尽管大语言模型(LLM)在生成功能正确的 Solidity 代码方面取得了显著进展,但在生成 Gas 高效且安全的代码方面仍面临关键挑战,而这些是真实世界智能合约部署的关键要求。尽管近期的进展利用监督微调(SFT)和直接偏好优化(DPO)进行代码偏好对齐,但现有方法将功能正确性、Gas 优化和安全性视为独立目标,导致生成的合约可能达到操作上的健全性,却存在过高的执行成本或危险的漏洞。为了解决这些局限性,我们提出了 PrefGen,这是一个新颖的框架,它将标准 DPO 扩展到人类偏好之外,纳入可量化的区块链特定指标,从而实现专为智能合约生成量身定制的整体多目标优化。我们的框架引入了包含四个互补指标的全面评估方法:Pass@k(功能正确性)、Compile@k(语法正确性)、Gas@k(Gas 效率)和 Secure@k(安全性评估),提供了严格的多维合约评估。通过大量实验,我们证明 PrefGen 在所有关键维度上均显著优于现有方法,实现了 66.7% 的 Pass@5、58.9% 的 Gas@5 和 62.5% 的 Secure@5,同时生成了功能正确、成本高效且安全的可用于生产的智能合约。

关键词

引用

@article{arxiv.2506.03006,
  title  = {A Preference-Driven Methodology for High-Quality Solidity Code Generation},
  author = {Zhiyuan Peng and Xin Yin and Chenhao Ying and Chao Ni and Yuan Luo},
  journal= {arXiv preprint arXiv:2506.03006},
  year   = {2025}
}