8 種の LLMにおけるライブラリ・言語選好の調査──NumPy の過剰利用と Python 偏重を実証
8 種の LLM を用いたコード生成におけるライブラリ・言語選好の実証研究。NumPy の不要な過剰利用が最大 45% に達し、Python が 58% でデフォルト選択される偏重傾向を明らかにした。
リリース: 2025-03-21 · 読了 4 分論文概要
大規模言語モデル(LLM)のコード生成能力に関する評価はこれまで機能的正確性や構文的妥当性に集中しており、どのライブラリやプログラミング言語を選択するかという設計上の選好については見落とされてきた。本論文では、8種の多様な LLM を対象に、コード生成におけるライブラリとプログラミング言語の選好に関する初めての実証研究を行い、NumPy などの広く普及したライブラリの過剰利用や Python への強い偏重を確認した。
関連研究
コード生成分野の先行研究の多くは HumanEval や MBPP などのベンチマークを用いて機能的正確性を測ることに主眼を置いており、モデルが自律的に決定する技術スタックの妥当性やバイアスについては十分に検証されていなかった。本研究は、このギャップを埋めるための実証的な分析フレームワークを提供する。
新規性と貢献
既存研究と比較して、本研究は「モデルが最適性よりも知名度や学習データの多さを優先してライブラリ・言語を選択しているか」を定量的に示した点に新規性がある。特定のライブラリや言語におけるバイアスを体系的に測定することで、今後のデータ多様化やファインチューニングの手法に新たな評価軸をもたらす。
提案手法の詳細
8種の LLM を対象に多様なコード生成タスクを課し、生成されたコードにおけるライブラリの利用状況と言語の選択頻度を測定した。
評価・考察
実験の結果、LLM は NumPy などの広く普及したライブラリを過剰に使用する強い傾向を示し、最大 45% のケースにおいてその利用が不要であり正解ソリューションから逸脱していた。また、Python がデフォルト言語として圧倒的に選ばれる傾向が確認された。高パフォーマンスが求められ Python が最適ではないプロジェクト初期化タスクであっても、58% のケースで Python が選択され、Rust は一度も使用されなかった。
応用例と今後の展望
本研究の結果は、ソフトウェア工学分野や AI アプリケーション開発において、LLM がタスク固有の最適性ではなく学習データの頻度に依存してライブラリや言語を選択するリスクを浮き彫りにしている。国内の金融・組み込みシステム開発などの現場において、LLM を用いたコード生成支援ツールや自動リファクタリングエージェントを導入する際、モデルの言語偏重や不適切なライブラリ選定を抑制するためのターゲットを絞ったファインチューニングや評価ベンチマークの導入が不可欠となる。
結論
LLM はコード生成において適格性よりも知名度や人気を優先する傾向があり、NumPy の過剰利用や Python への偏重が実証された。今後は、ライブラリや言語選択の忠実度を明示的に測定する評価ベンチマークやデータ多様化の必要性が強調される。
注釈
- LLM: Large Language Model(大規模言語モデル)。
- NumPy: Python における数値計算を効率的に行うための標準的なライブラリ。