生成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
「ポンコツ」と呼ばれたM365 Copilotの逆転劇、GPT-5が転換点 活用の秘訣は“脱・プロンプト職人”
-
2
人間 vs. 人型ロボ、より多く作業をこなせるのは? 生配信で対決した結果…… 米企業
-
3
キオクシア社長「記録的な増収増益」 3カ月の売上収益1兆円、純利益は2990%増 好決算の背景は
-
4
「AIデータセンターの電力需要が急増」はホント? 発電大手Jパワー社長が明かした“報道との温度差”
-
5
伊藤忠商事や三菱ケミカルなど16社が参画 大手企業の「暗黙知」を活用する新プロジェクト
-
6
生成AIで3Dモデルを自動作成 専門スキル不要でテキストや画像から3D化
-
7
NEC社長が説く AI時代と新たな安全保障環境の到来で「ITサービスはこう変わる」
-
8
OpenAI、「ChatGPT」に個人向け資産管理機能 金融口座と連携
-
9
「邪魔すぎ」――LINE入力欄の“新AI機能”が不評 消し方は?
-
10
Python 3.15に追加されるlazy importと内包表記でのアンパッキングについて調べてみた
SpecialPR
ITmedia AI+ SNS
インフォメーション
注目情報をチェック
ITmedia AI+をフォロー
あなたにおすすめの記事PR