ChatPaper.aiChatPaper

Copilot評価ハーネス:LLMガイドによるソフトウェアプログラミングの評価

Copilot Evaluation Harness: Evaluating LLM-Guided Software Programming

February 22, 2024
著者: Anisha Agarwal, Aaron Chan, Shubham Chandel, Jinu Jang, Shaun Miller, Roshanak Zilouchian Moghaddam, Yevhen Mohylevskyy, Neel Sundaresan, Michele Tufano
cs.AI

要旨

大規模言語モデル(LLM)を統合開発環境(IDE)に組み込むことは、現代のソフトウェア開発における重要な焦点となっています。OpenAI GPT-3.5/4やCode LlamaなどのLLMは、インテリジェントなチャット駆動型プログラミングアシスタントとして機能することで、開発者の生産性を大幅に向上させる可能性を秘めています。しかし、LLMをそのまま使用することは、特定のシナリオにおいて最適とは言えません。むしろ、各システムにおいて、LLMをそのヒューリスティックに合わせて調整することが、最高のパフォーマンスを保証するために必要です。本論文では、Copilot評価ハーネスを紹介します。これは、LLMが導くIDEの相互作用を評価するためのデータとツールのセットであり、さまざまなプログラミングシナリオと言語をカバーしています。我々は、従来の最先端の評価システムよりも堅牢で情報量の多い評価を提供するメトリクスを提案します。我々は、自然言語からのコード生成(generate)、コードからのドキュメント生成(doc)、テストケース生成(test)、バグ修正(fix)、ワークスペースの理解とクエリ解決(workspace)など、幅広い開発者タスクを包含するシナリオに対して、静的および実行ベースの成功メトリクスを設計し、計算します。これらの成功メトリクスは、特定のIDEとそのパラメータ空間内でのLLMのパフォーマンスを評価するために設計されています。これらのメトリクスを使用して3つの一般的なLLMを評価した結果から得られた知見は、LLMが導くIDEにおける将来のシナリオの開発と検証に役立つ情報を提供します。
English
The integration of Large Language Models (LLMs) into Development Environments (IDEs) has become a focal point in modern software development. LLMs such as OpenAI GPT-3.5/4 and Code Llama offer the potential to significantly augment developer productivity by serving as intelligent, chat-driven programming assistants. However, utilizing LLMs out of the box is unlikely to be optimal for any given scenario. Rather, each system requires the LLM to be honed to its set of heuristics to ensure the best performance. In this paper, we introduce the Copilot evaluation harness: a set of data and tools for evaluating LLM-guided IDE interactions, covering various programming scenarios and languages. We propose our metrics as a more robust and information-dense evaluation than previous state of the art evaluation systems. We design and compute both static and execution based success metrics for scenarios encompassing a wide range of developer tasks, including code generation from natural language (generate), documentation generation from code (doc), test case generation (test), bug-fixing (fix), and workspace understanding and query resolution (workspace). These success metrics are designed to evaluate the performance of LLMs within a given IDE and its respective parameter space. Our learnings from evaluating three common LLMs using these metrics can inform the development and validation of future scenarios in LLM guided IDEs.
PDF111December 15, 2024