MiracleJobLogo
エンジニアのエンジニアによるエンジニアのためのサイト
News 07/25 おすすめ情報に 『 【案件】Azure AD関連の認証設計/azureの基本設計 』 を追加しました。
会員登録するとキャリア診断やサイトに参加することができます。
あなたにおすすめな技術情報、資格、仕事などをお知らせします。

無料会員登録


パスワードを忘れた場合
LINEで送る
MiracleJobBanaLeft1
MiracleJobBanaLeft2


LLMはビビりなので、ちゃんと You own everything を伝えよう
profile-img
投稿者: signalさん
投稿日:2025/09/02 13:30
更新日:2025/09/03 11:05
like-img
分類
技術
テクノロジー
全般
キャリア
構築 / 設計
投稿内容

LLMはビビりなので、ちゃんと You own everything を伝えよう

「LLM(大規模言語モデル)はビビりがち」
よく耳にするこのAIの特徴は、最近のコードレビュー議論で話題になっています。
この“ビビり癖”をどう扱うか考えてみました。

こちらのスライドを参考にさせていただきました。ありがとうございます。
https://www.mechanica-inc.com/slides/20250806-code-review-for-agentic-coding/#/33

LLMは、関数名やシグネチャを変えるような「大きな変更」を過剰に避けたり、「最小編集バイアス」と呼ばれる癖で、元のコードの骨組みを頑なに守ろうとします。(この変更による影響範囲を想定できない、AIの典型的な弱点のせいでもありますが)
これは、LLMが賢すぎるあまり「壊したらいけない」「責任を持てない」といった考え方をしてしまっているからです。


だからこそ、人間の側で明確に「You own everything(全部あなたの責任!)」と伝えることが大切になってきています。


本来のレビューの目的は「正しいソフトウェア設計に近づくこと」。
部分的なバグ修正や防御的プログラミングだけでなく、「もし全部書き直すならどうする?」という視点で、既存コードや新しい提案の全体像を設計し直す勇気が必要です。

LLMや人間がコードを書くときも、「自分が全責任を持つ」という意識で、怖がらずに大胆な設計見直しや変名・削除もできる状態が理想ですよね。
大きな変更になってもOK、「You own everything」で進めて良いんです。

壊れていい精神

防御的に条件分岐しまくるコードは、時にバグの温床になりやすい。
ロジック途中にif文を挟むより、発生源で正しくvalidate(検証)、ロジックにはassert(保障)を使い、
「おかしいデータなら潔くクラッシュ」させる!!! そんなFail Fast(早くブッ壊す)マインドが推奨される。

LLMに対しても、「怖がるな、assertしよう」と応援してあげる必要があるということです。

勇気と責任のセットが、よいコードを生む

  • LLMは“ビビり”がちなので、人間側で「全部あなたが責任を持つんだよ」と勇気づけることが大切。

  • コードも設計も「もし一から書き直したら?」という視点を忘れない。

  • 防御的になりすぎず、検証と保証は発生源・出口で明確に。

  • 壊す勇気と責任感が、健全な設計に繋がる。


AIが言うなら正しいんだろう、AIが言うなら間違いない、自分のコードが間違っているから…でポチポチするのはもうやめて、
「AIをもっと利用してやる!」といった感じで接してあげるのがいいのかもしれませんね。AIを先輩ではなく部下にしましょう、そういったお話でした。

コメント


MiracleJobBanaRight1
MiracleJobBanaRight2
MiracleJobBanaRight3