生成AIでコーディング効率化!→待っていたのは“失敗の日々” とあるITエンジニアとAIの試行錯誤の記録(2/3 ページ)
「なぜか行が重複してしまう現象が発生し、patchコマンドが成功しなかった。もっとぐちゃぐちゃになった例もあり、記号の有無や行の順番が誤っている、一部の行が抜けているなどの不完全な形式で出力されることが多くあった」
この失敗の原因について、山西さんは出力フォーマットが複雑すぎるのが原因では考察。しかし、他のアイデアも思い浮かばず、約2割の確率で成功することも場合もあることから、いったんこの形で妥協したという。
また、形式的には正しくてpatchが成功する場合でも、何も変化が起こらない様な意味をなさない差分が返される場合もあった。「変更対象のファイルを与えるだけでは、AIが十分に推測できず、苦し紛れの様な回答をするのでは」と考えた山西さんは、十分な事前情報をAIに与えることを思い付く。そこで今度は""型注釈をしたいメソッドの呼び出し元のコード""を与えることにした。しかし、AIは追加したコードを意図通りに活用してはくれず、この方法もうまくはいかなかった。
他にも、さまざまな試行錯誤をしたが、ほぼ全てが徒労に終わり、この時点での型注釈のタスク全体の成功率は体感約1割ほどだったという。その後も何度もリトライを続けていたが、らちが明かなかったため、一度失敗事例を整理することにした。そこで上がったのは、大きく3つの失敗要因だった。
生成AI活用に失敗した“3つの要因”とは?
1つ目の要因は「失敗率が高い」という点だ。例えば、先述のdiffの例では、注意点をプロンプトで指示しても失敗率が下がることはなかった。この点について、山西さんは「実は失敗率を大幅に改善する方法なんてないのでは?」という仮説に行き着く。それを踏まえ今度は、1つのタスクを“失敗率の低いタスクに分割する方法”を試してみることにした。
今まではファイル全体に型注釈をつけることを依頼していたが、それをメソッドごとにつけるような指示へ分解。5つのメソッドがあれば、5回AIとやりとりをして、順番に処理を進めると、この方法がうまくいき、失敗率が8割から2割程度まで改善できたという。
「なぜこれまで分割をやってこなかったかというと、従来のプログラミングでいうとリファクターに近いと思っていた。大きなメソッドを5つの小さなメソッドに分解しているのと同じで、これで動作が改善するとは考えていなかった。しかし、生成AIはその通りではないと実感できた」
2つ目の要因に挙げたのは「失敗のパターンが多い」ことだ。失敗率が2割まで改善できたものの、その中にはさまざまなパターンの失敗例が残っている。それら全ての失敗の仕方を事前に網羅していくのは無理があるため、失敗したときにフィードバックをできる方法を考えた。
Copyright © ITmedia, Inc. All Rights Reserved.
この記事の著者
関連記事
こんなメディアも見られています
ITmedia AI+に関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
SpecialPR
アクセスランキング
-
1
「ほんだし」のラベルがAIでぐちゃぐちゃに…… 味の素、公式Xの投稿画像について謝罪
-
2
Claude、Codex、Qwen……そのAI用語、どう読む? 読み方クイズ30問
-
3
現役組み込みエンジニアがAIを業務利用して分かったこと――期待と限界と現実解
-
4
メルカリが明かす「Claude Code全社展開」「シャドーAI対策」を支える仕組み
-
5
小田原の老舗梅干し店、世界で稼ぐ――「この外国人は何を言っているんだ」から逆転、築いた“売れる仕組み”
-
6
“梅干し職人”のためツール自作 老舗漬物店のClaude活用、「チャット+コピペ」で成果を出せたワケ
-
7
OpenAIが明かす、ユーザーはChatGPTを「こう使っている」
-
8
「社内情報をAIに食わせればいい」だけでは足りない、情報検索精度向上の鉄則
-
9
【読まれた記事1位】「AI需要で半導体不足」の裏で本当に起きていること――2026年前半まとめ
-
10
外資AIベンダー襲来、システム開発の“垣根”消失…… 新生TISIはどう対抗する?
SpecialPR
ITmedia AI+ SNS
インフォメーション
注目情報をチェック
ITmedia AI+をフォロー
あなたにおすすめの記事PR