指示を出す前に、設計部分のレビューを

 私のような環境(クラウドのバックエンド)だと、それだけだとちょっと危険なので、大きな開発をするさいは、エージェントに指示を投入する前に、設計部分のレビューを行う。普段のPRはそういうルールで回して開発を爆速にし、実際のリリース時は、E2E(エンドツーエンド)でテストするスイートを流すなどの作戦が有効だ。

 ちなみに、うまく「ハーネス」をつくるコツは、エージェントの思考の履歴を見ることだ。私はインタラクティブでも、ヘッドレスでも、何かエージェントが思った動きをしてくれなかったときは、地道にヒストリを見て、エージェントの動きをレビューする。そういうこともエージェントは助けてくれる。エージェントに「なぜ今回は〇〇の動きをしなかったのですか?」とか聞くと理由を言ってくれる。そして、自分でも直接レビューをする。そうすれば、エージェントに向けたハーネスをどう追加・変更するべきかがわかるようになる。

適切なレビューで、部下は効率よく動く ©AFLO

 いずれにせよ、これだけペースが速い世の中ではエンジニアリングのTipsや考え方は常に流動化していくだろう。しかし、エージェントが知らない「ドメイン知識」や「意図」は常に重要であり、それをいかにアセット化しておくのかが重要になってくる。

ADVERTISEMENT

 そして、エージェントが上手く動かなかったときには、次回から動くようにハーネスをはめていく。的確なアセットの指示でエージェントが円滑に動くよう常に改善していく。これらのノウハウこそが、AIマネージャたる私たちの「ソフトウェアエンジニアリング」なのだと思う。

 本書のマニフェストは、私が失敗しながら少しずつ積み上げてきた経験則だ。あなたのプロジェクトではまた違う部分もあるかもしれない。しかし最も重要なのは、エージェントが上手く動かなかったら機を逃さずに改善のアイデアを出して実装し、フィードバックを受けてまた改善を積み重ねていくことに他ならない。

“AIに丸投げ”すると効率は約18%低下

 先にも強調した通り、AIは間違う可能性があることを前提に、人間による承認ステップを入れてバイブコーディングすることが、現実的な開発手法となる。実際の業務では、社内システムの様々な制約やルール、運用の兼ね合いで人間がジャッジしたほうが円滑なことも多い。

 完全自動化を目指すより、積極的に人を組み込む(HITL:Human-In-The-Loop)という設計思想のほうが、自動化の恩恵を得やすく、安全性・安定性のバランスをとれるのだ。本章で扱ってきたバイブコーディングのどこに人間のチェックを入れていたか思い出してほしい。

 2025年、カーネギーメロン大学とスタンフォード大学の共同研究で、48人のプロフェッショナルを対象に、AIを「部分的な補助」(拡張)として使う場合と、「タスク全体の丸投げ」(自動化)として使う場合の効率を比較した興味深い報告がある。拡張チームでは、人間が主体となり、データクリーニングや定型コードの作成といった特定のサブタスクのみをAIに委任した結果、作業効率は平均で約24%向上した。一方、自動化チームは、AIに「四半期報告書を完成させよ」といった包括的な指示を出し、人間は最終結果のみレビューした結果、効率は平均で約18%低下した。

 この逆転現象は、丸投げの「成果物」の中に潜むエラー、論理的矛盾、ハルシネーションなどの検証・修正コストのほうが、AIによるスピード向上のメリットをはるかに上回ってしまうためだ。