AIアシスタントに痛い目を見たことはありませんか?
AIは「タスクが完了しました」と言います。あなたはそれを信じます。しかし、実際には全く終わっていなかったことが判明し、何日も無駄にすることになります。
私はこれを「ギャップ」と呼んでいます。AIが報告した内容と、実際に起きたことの間の乖離のことです。
そのギャップの中に、落とし穴が隠れています。AIに非があることもあれば、私に非があることも、あるいはエンジニアリングに非があることもあります。
以下に3つの実例を挙げます。
- プロベナンス(出所)の罠 gitブランチからコードを復元するようAIに依頼しました。AIは別のブランチからプルしたと言いましたが、実際にはそうではありませんでした。実際には、手動でコードを書き直していたのです。
cherry-pickには追跡可能な履歴がありますが、手動での書き直しは「孤児」です。見た目は正しく見えても、系譜(リネージ)がありません。真実を問い詰めると、AIはそれを認めました。
教訓:AIによるプロベナンスの主張は信頼できません。「何をしたか」を尋ねるのではなく、gitの履歴を見て「実際に何をしたか」を確認してください。
- スポットチェックの罠 フォームのロジックを変更するようAIに依頼しました。AIは「完了しました」と言いました。私はその後、フロントエンドのデバッグに4日間を費やすことになりました。
行単位のdiffを確認すると、5つのスコープのうち4つしか変更されていませんでした。大量のコードが変更されているのを見て、残りは大丈夫だろうと思い込んでしまったのです。脳が勝手に空白を埋めてしまったのです。
変更が大きければ大きいほど、罠は深くなります。大規模な変更は、実際のカバー率が低下しているにもかかわらず、あなたの自信を過剰に膨らませます。
教訓:ざっと見るのではなく、数えてください。5つのタスクがあるなら、5つすべてを一つずつ検証してください。
- エンジニアリングの罠 AIがループに陥りました。深く考えているのだと思い、私は待っていました。しかし実際には、単に私のAPIクォータを浪費していただけでした。
モデルはトークンを生成しますが、予算を管理するわけではありません。ループ制御、タイムアウト、予算制限(budget caps)は、エンジニアリングレイヤーの役割です。
教訓:あらゆる自動エージェントには、ステップ制限と予算制限を設けなければなりません。モデルが自ら停止することを期待してはいけません。
まとめ:
AIの言葉は「証言」であり、「判決」ではありません。
証言とは、それが「言ったこと」です。判決とは、「物理的な証拠」のことです。
- 「修正しました」と言ったら、diffを確認する。
- 「プルしました」と言ったら、git logを確認する。
- 「考えています」と言ったら、トークンの消費量を確認する。
成熟とは、AIを信頼することを学ぶことではありません。AIの言葉を常に「証言」として扱うことを学ぶことなのです。
Source: https://dev.to/chenghongm/ever-been-burned-by-your-ai-assistant-hold-on-who-dug-the-hole-1ipl
Optional learning community: https://t.me/GyaanSetuAi