AIに何をすべきでないかを伝える
制約はあなたが望む結果についてだけではない——AIに避けてほしい手についてでもある。制約なしに放っておくと、モデルは依存を追加し、頼んでいないコードを「親切に」リファクタリングし、要求の縁に機能を発明する方へと漂う。いくつかの否定的制約が出力を引き締める。
検索入力にデバウンスを追加して。
検索入力にデバウンスを追加して。
制約:
- 新しい依存は追加しない — すでに lodash があるので、それを使う。
- SearchBar.tsx だけ触る。親はリファクタリングしない。
- 既存の prop の名前と型は変えない。
- 300ms の遅延。
二つ目のプロンプトは、最初のがうまくいかなくなる十二の道を未然に塞ぐ。否定的制約は既存のコードベースで特に価値がある。そこでは頼んでいない変更のコストは、それをレビューすることだけではない——マージコンフリクト、驚いたチームメイト、そしてちゃんと動いていたコードのリグレッションだ。越えてほしくない線があるなら、明示的に言え。AIは礼儀からあなたの境界を推し量ったりしない。