本研究は、11種類の最新の大規模言語モデルの脆弱性検出機能を包括的に評価しました。
5種類の効果的なプロンプト手法を検討し、基本プロンプトと文脈学習プロンプトが最も良い結果を示しました。提案した対照的ペアやチェーン・オブ・シンキングのプロンプトも一部のモデルで有効でした。
大規模言語モデルの脆弱性検出精度は0.5-0.63のバランス精度にとどまり、76%の場合で脆弱なコードと修正済みコードを区別できませんでした。
287件のモデル出力を分析した結果、57%にコード理解、ホーミング、論理、常識知識の誤りが含まれていました。特に、境界チェックやヌルチェックの理解に課題がありました。
DbgBenchデータセットを用いた実験では、LLMは27件中6件の脆弱性を正しく特定できただけで、人間の診断と比べて大幅に劣る結果となりました。
これらの結果から、現状の大規模言語モデルには脆弱性検出に必要な高度な理解と推論能力が不足していることが明らかになりました。今後の研究では、モデルの脆弱性検出機能の向上が重要な課題となります。
他の言語に翻訳
原文コンテンツから
arxiv.org
深掘り質問