苦手なタスクで生成AIを使うリスク

 米テキサス州にあるアビリーンクリスチャン大学の研究者らが発表した論文によれば、彼らは21人の大学生を被験者として、一定の条件下でコーディングをさせた。その21人は、コーディングの授業を受講していた学生たち、つまりコーディングの初心者だったとのことだ。

 そんな被験者に対して、C++というプログラミング言語を使い、「ループを使って正の数と負の数のどちらが多いかを判定するプログラム」を作成するというタスクを与え、さらにChatGPTとGitHub Copilot(コード生成に特化した生成AIサービス)の2種類のツールを使える環境にした上で、実際の開発を行わせた。

 ちなみに「ループを使う」という具体的な指示が行われた理由は、ループの概念が実験の2週間前に授業で示されていた、つまり「被験者にとって、ループはまだ完全に習得されたとは言えないが、圧倒的に難しいというほどではない概念だった」ためだった。

 実験の際、研究者らは被験者たちにアイトラッキング装置を装着させ、コーディング中の視線の動きを記録した。また彼らに対し、考えていることを言葉にして口に出しながら作業するように指示した。さらに課題終了後、被験者に対してインタビューを行い、生成AIツールを使った感想などを聞き取った。

 これらの対応を通じて、コード生成AIが、初心者のコーディングにどのような影響を与えたのかを確認したのである。

 結果はどうだったか。結論から言うと、もともとコーディングが得意な学生については、AIの提案を適切に取捨選択しながら効率的に課題を解くことができた一方で、コーディングが苦手な学生は、AIの提案に振り回されて本質的な理解が追いつかず、結果的に自分の力でプログラムが書けなくなってしまう傾向が見られたそうである。

 もともとコーディングの授業において良い成績を収めていた学生は、コード生成AIの提案を吟味し、適切なものを選択した。その結果、効率的に課題に取り組むことができ、自分の考えを優先しながらAIを活用する姿勢が見られた。そうした学生は、AIを使いながらも自分の知識を深めることができていたと研究者らは結論付けた。

 一方で、プログラミングが苦手で自信のない学生は、AIの提案に頼りすぎる傾向が見られたそうである。AIが出力するものを鵜呑みにしてしまい、自分で考えるプロセスを飛ばしてしまう場面が多く確認された。さらに、提案された解決策がどういうものかを理解できていないにもかかわらず、それを「とりあえず使ってしまう」という学生も見られたそうだ。

 そうした学生はAIに頼り過ぎ、かえって自分の力でプログラムを書けなくなる危険性があると示唆されている。