生成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よりよっぽど良い」の声も 担当者に狙いを聞いた
-
2
え、21日で37テラも? 高性能SSDを食いつぶす「あのAIツール」にご用心:886th Lap
-
3
AIに「相手に電気ショックを与えろ」と命じ続けたらボタンを押すのか? 11のLLMで“ミルグラム実験” 抵抗できたのは……
-
4
ソフトウェアエンジニアの仕事は「ループを書くこと」になる 内側ループと外側ループ(ハーネス)入門
-
5
「Claude Fable 5」をサブスクの標準機能に――AnthropicのエンジニアがXに投稿 7月8日以降の「早期復活目指す」
-
6
Anthropicの営業はAIエージェントをこう使う! 日本法人メンバーが明かす手の内
-
7
復活した「Fable 5」 米政府からのオーダーに対して、Anthropicはどう対策したのか
-
8
AIで“ゲームキャラの出産二次創作”を何千回と生成する人も……ChatGPTの会話57万件から見えたヘビーな利用実態
-
9
3万円で「Yahoo!ニュース」にPR掲載 プレスリリースをAIで「ニュース風記事」に
-
10
光接続の標準規格「OCI」対応シリコン、GFが27年に投入
SpecialPR
ITmedia AI+ SNS
インフォメーション
注目情報をチェック
ITmedia AI+をフォロー
あなたにおすすめの記事PR