【要約】AI Agent 時代は「うまく指示する」より「未知を見つける」が大事 [Qiita_Trend] | Summary by TechDistill
> Source: Qiita_Trend
Execute Primary Source
// Problem
開発者がAIエージェントに作業を依頼する際、指示内容と実際のコードベースの間に乖離が生じ、成果物の品質が低下する問題がある。プロンプトをいくら精緻化しても、以下の要因により「期待外れ」の結果を招く。
- ・プロンプト(Map)に記述しきれない、既存コードの暗黙的な制約や運用ルールが存在する。
- ・開発者自身も気づいていない、セキュリティや互換性に関する未知の論点(Unknown Unknowns)がある。
- ・「業務ツールらしいUI」といった、言語化が困難な主観的判断(Unknown Knowns)が反映されない。
// Approach
著者は、AIエージェントを「未知の制約を発見するためのパートナー」として扱う、対話的なワークフローの採用を提案している。単発の命令で完結させず、以下の5つの型を用いてMapとTerritoryの差分を埋める。
1.blindspot pass: 実装前に、見落としそうな仕様や制約をAIに洗い出させる。
2.interview: AIから質問をさせることで、人間側の曖昧な前提を解消する。
3.prototype / reference: プロトタイプや既存コードを提示し、言語化困難な方向性を合わせる。
4.implementation-notes: 実装中に発見した制約をメモとして残し、次回のコンテキストに反映する。
5.post-implementation quiz: 実装後にAIからクイズを出し、人間側の理解度を担保する。
// Result
このアプローチにより、AIエージェントを用いた開発における「実装後の手戻り」や「レビューでの却下」を大幅に削減できる。プロンプトを「作業命令」としてではなく、「未知を減らすための対話プロセス」として再定義することで、以下の成果が得られる。
- ・Unknown UnknownsをKnown Unknownsへと引き上げ、設計ミスを未然に防ぐ。
- ・AIが生成したコードに対する人間の理解を深め、ブラックボックス化を防止する。
- ・実装中の発見を継続的にコンテキストへ還元する、循環型の開発サイクルを構築できる。
Senior Engineer Insight
> プロンプトを「命令」ではなく「ワークフロー」として捉える視点は、極めて実践的だ。大規模な既存資産を扱う現場では、コンテキストの網羅は不可能に近い。したがって、AIとの対話を通じて「何を知らないか」を特定するプロセスは、開発の安定性を高める必須の工程となる。ただし、全てのタスクでこれを行うと対話コストが膨らむため、難易度の高いタスクに限定して適用するなどの運用判断が重要だ。