核心概念
LLMを用いたコード生成において、初心者が直面する困難は、専門用語の不足ではなく、必要な情報を適切に選択し、プロンプトに含める能力の欠如に起因する。
要約
LLMを使ったコーディングで初心者が失敗する理由:情報が重要である理由
この研究論文は、初心者のプログラマーがLLM(大規模言語モデル)を用いたコード生成タスクにおいて、効果的なプロンプトを作成するのに苦労する理由を調査しています。先行研究では、専門用語の不足が主な障壁として挙げられていましたが、本研究では、情報の選択と提示がより重要な要因であることを示唆する証拠が示されています。
本研究では、学生がLLMを用いてコードを生成する際に効果的なプロンプトを作成する上での困難の原因を調査することを目的としています。具体的には、(1) 学生が適切なプロンプトを作成するために必要な専門用語を単に欠いているのか、(2) 学生がコード生成タスクを解決するためにLLMが必要とする情報の範囲を理解していないのか、という2つの対立する仮説を検証しています。
研究チームは、80人の学生によって書かれた1,749個のプロンプトを含むSTUDENTEVALデータセットを用いて分析を行いました。まず、技術用語の影響を分離するために、学生が使用する同義語に近い用語に置き換えることで、技術用語の語彙選択に関する因果分析を実施しました。次に、学生がプロンプトをどのように編集し、どのような失敗に遭遇するかを抽象化したグラフを分析することで、情報選択を調査しました。具体的には、学生が問題解決を試みる際に、生成されるコードの意図する動作を記述する問題特有の「手がかり」、つまり情報で、一連のプロンプトに注釈を付けました。