InterCode: Standardizing and Benchmarking Interactive Coding with Execution Feedback

要約

人間は基本的にインタラクティブな方法でコードを記述し、エラーを修正し、あいまいさを解決し、タスクを分解するために、継続的な実行フィードバックに依存しています。
LLM は最近、有望なコーディング機能を示していますが、現在のコーディング ベンチマークでは主に静的な命令からコードへのシーケンス変換プロセスが考慮されており、エラーが伝播したり、生成されたコードと最終的な実行環境が切断される可能性があります。
このギャップに対処するために、標準的な強化学習 (RL) 環境として、コードをアクションとして、実行フィードバックを観察として使用する、軽量で柔軟で使いやすいインタラクティブ コーディングのフレームワークである InterCode を導入します。
当社のフレームワークは言語やプラットフォームに依存せず、自己完結型の Docker 環境を使用して安全で再現可能な実行を提供し、従来の seq2seq コーディング手法とすぐに使用できる互換性を備えていると同時に、インタラクティブなコード生成のための新しい手法の開発を可能にします。
InterCode を使用して、Bash と SQL をアクション スペースとして使用する 2 つの対話型コード環境を作成し、静的 Spider データセットと NL2Bash データセットのデータを活用します。
ReAct や Plan & Solve などのさまざまなプロンプト戦略で構成された複数の最先端の LLM を評価することにより、テストベッドとしての InterCode の実行可能性を実証します。
私たちの結果は、インタラクティブなコード生成の利点を示し、InterCode がコードの理解と生成機能を向上させるための挑戦的なベンチマークとして機能できることを示しています。
InterCode は簡単に拡張できるように設計されており、本質的にマルチステップで複数のプログラミング言語を必要とする人気のコーディング パズルであるキャプチャ ザ フラッグなどの新しいタスクを組み込むために使用することもできます。
コードとデータを含むプロジェクト サイト: https://intercode-benchmark.github.io

要約(オリジナル)

Humans write code in a fundamentally interactive manner and rely on constant execution feedback to correct errors, resolve ambiguities, and decompose tasks. While LLMs have recently exhibited promising coding capabilities, current coding benchmarks mostly consider a static instruction-to-code sequence transduction process, which has the potential for error propagation and a disconnect between the generated code and its final execution environment. To address this gap, we introduce InterCode, a lightweight, flexible, and easy-to-use framework of interactive coding as a standard reinforcement learning (RL) environment, with code as actions and execution feedback as observations. Our framework is language and platform agnostic, uses self-contained Docker environments to provide safe and reproducible execution, and is compatible out-of-the-box with traditional seq2seq coding methods, while enabling the development of new methods for interactive code generation. We use InterCode to create two interactive code environments with Bash and SQL as action spaces, leveraging data from the static Spider and NL2Bash datasets. We demonstrate InterCode’s viability as a testbed by evaluating multiple state-of-the-art LLMs configured with different prompting strategies such as ReAct and Plan & Solve. Our results showcase the benefits of interactive code generation and demonstrate that InterCode can serve as a challenging benchmark for advancing code understanding and generation capabilities. InterCode is designed to be easily extensible and can even be used to incorporate new tasks such as Capture the Flag, a popular coding puzzle that is inherently multi-step and involves multiple programming languages. Project site with code and data: https://intercode-benchmark.github.io

arxiv情報

著者 John Yang,Akshara Prabhakar,Karthik Narasimhan,Shunyu Yao
発行日 2023-06-26 17:59:50+00:00
arxivサイト arxiv_id(pdf)

提供元, 利用サービス

arxiv.jp, Google

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