B4: Towards Optimal Assessment of Plausible Code Solutions with Plausible Tests

要約

生成された複数のコード ソリューションから最適なコード ソリューションを選択することは、コード生成において不可欠なタスクです。これは、信頼できるバリデーター (開発者が作成したテスト ケースなど) を支援として使用することで達成できます。
信頼できるテスト ケースが常に利用できるわけではなく、実際に構築するには費用がかかる可能性があるため、研究者は、コード ソリューションを評価するためのテスト ケースを自動的に生成することを提案しています。
ただし、コード ソリューションとテスト ケースの両方がもっともらしいが信頼できない場合、最適なソリューションを選択するのは困難になります。
この問題に取り組むためにいくつかのヒューリスティックな戦略が提案されていますが、それらには強力な理論的保証が欠けており、最適な選択戦略が存在するかどうかは依然として未解決の問題です。
私たちの仕事は 2 つの方法で貢献します。
まず、ベイジアンの枠組み内で、解とテストの間で観察された通過状態の事後確率に基づいて最適な選択戦略を定義できることを示します。
最適な解決策を特定する問題は、整数計画問題として組み立てられます。
第 2 に、この最適な (まだ計算不可能な) 戦略を近似するための効率的なアプローチを提案します。ここで、近似誤差は事前知識の正確さによって制限されます。
次に、効果的な事前知識を組み込み、コード生成タスクを調整します。
理論的研究と実証的研究の両方で、既存のヒューリスティックでは、もっともらしいテスト ケースを使用して最適なソリューションを選択するのに限界があることが確認されています。
私たちが提案する近似最適戦略 B4 は、LLM 生成テストを使用した大規模言語モデル (LLM) によって生成されたコード ソリューションの選択において、既存のヒューリスティックを大幅に上回り、最も強力なヒューリスティックと比較して最大 50%、ランダムな選択と比較して 246% の相対的なパフォーマンス向上を達成します。
最も挑戦的なシナリオ。
私たちのコードは https://github.com/ZJU-CTAG/B4 で公開されています。

要約(オリジナル)

Selecting the best code solution from multiple generated ones is an essential task in code generation, which can be achieved by using some reliable validators (e.g., developer-written test cases) for assistance. Since reliable test cases are not always available and can be expensive to build in practice, researchers propose to automatically generate test cases to assess code solutions. However, when both code solutions and test cases are plausible and not reliable, selecting the best solution becomes challenging. Although some heuristic strategies have been proposed to tackle this problem, they lack a strong theoretical guarantee and it is still an open question whether an optimal selection strategy exists. Our work contributes in two ways. First, we show that within a Bayesian framework, the optimal selection strategy can be defined based on the posterior probability of the observed passing states between solutions and tests. The problem of identifying the best solution is then framed as an integer programming problem. Second, we propose an efficient approach for approximating this optimal (yet uncomputable) strategy, where the approximation error is bounded by the correctness of prior knowledge. We then incorporate effective prior knowledge to tailor code generation tasks. Both theoretical and empirical studies confirm that existing heuristics are limited in selecting the best solutions with plausible test cases. Our proposed approximated optimal strategy B4 significantly surpasses existing heuristics in selecting code solutions generated by large language models (LLMs) with LLM-generated tests, achieving a relative performance improvement by up to 50% over the strongest heuristic and 246% over the random selection in the most challenging scenarios. Our code is publicly available at https://github.com/ZJU-CTAG/B4.

arxiv情報

著者 Mouxiang Chen,Zhongxin Liu,He Tao,Yusu Hong,David Lo,Xin Xia,Jianling Sun
発行日 2024-09-13 10:22:08+00:00
arxivサイト arxiv_id(pdf)

提供元, 利用サービス

arxiv.jp, Google

カテゴリー: cs.AI, cs.CL, cs.SE パーマリンク