⏱ 読了目安: 約9分
- 事実と背景:人間が全条件を書く従来の指示から、AIが逆質問して要件を埋める「ゴールシークプロンプト」の実践手法が体系化された。
- 技術的変革:プロンプト生成型・3点セット型・伴走型の3パターンにより、初回出力での推測ハルシネーションを極小化する。
- 現場への影響:要件定義や運用設計の初期工数が激減し、エンジニアは曖昧な構想から手戻りゼロで高精度な成果物を引き出せる。
手戻りを生むプロンプト病の処方箋
新規機能の設計ドキュメントや社内ガイドラインをAIに起草させようとプロンプト入力画面を開き、数十行にわたる背景、制約事項、フォーマット指定をキーボードでカタカタと打ち込み続けた挙げ句、出来上がった出力を見て「いや、そうじゃないんだよな……」とため息をついた経験は誰にでもあるはずだ。仕様の記述漏れをAIが都合の良い「勝手な推測」で補完してしまい、微妙にピントのズレたコードやドキュメントが生成される。この不毛なリトライループは、開発現場の貴重なリソースを確実に奪い去っていく。我々エンジニアは往々にして、コンパイラに渡す厳密な型定義のように「人間側が最初から完璧なコンテキストを提供しなければならない」という強迫観念に囚われがちだ。
だが、この前提そのものを根本から覆すアプローチこそが「ゴールシークプロンプト」である。この手法の起源は、ビジネス実務でおなじみのExcelのゴールシーク機能に由来する。目標とする最終数値(ゴール)をあらかじめ定義し、そこから逆算して必要な入力パラメータを割り出す考え方を、LLMとのプロンプト対話に応用したものだ。AIプロンプトエンジニアの林駿甫(ハヤシシュンスケ)氏が体系化し、コミュニティで「シュンスケ式」としても認知されているこの手法は、指示の主導権を大胆に反転させる。人間は「何を作りたいか」という最終成果物の形だけを提示し、それに到達するために不足している前提条件や変数をAI側に質問させるのだ。
システム開発における要件定義フェーズを思い起こしてほしい。優秀なテックリードやシニアエンジニアは、顧客やプロダクトマネージャーに対して最初から完璧な要件定義書を求めたりはしない。「最終的にどんなシステムを動かしたいか」を聞き出し、そこから逆算して「認証基盤は何を使うか」「想定トラフィックはどれくらいか」「既存DBとの整合性はどう取るか」と矢継ぎ早に問いを投げかけることで仕様を炙り出していく。ゴールシークプロンプトとは、まさにこの熟練エンジニアのヒアリングプロセスをプロンプト上で再現する技術的アプローチだと私は捉えている。
このアプローチを採用することで、人間側が抱える仕様の考慮漏れは劇的に減少する。成果物の種類(Git運用ルール、インフラ構成図、APIスキーマなど)を指定された瞬間、LLMは自身の事前学習データに含まれる何千万件もの類似成果物の構造パターンを参照し、「それを完成させるために欠落してはならない必須変数」を網羅的にリストアップしてくるからだ。人間は聞かれた質問に対して事実を淡々と答えるだけでよい。回答を繰り返すプロセス自体が思考のデバッグ作業となり、自分でも気づいていなかったエッジケースや設計の盲点が自然と洗い出されていくのである。
実務で使い倒す3つの実装パターン
ゴールシークプロンプトを現場の実務に落とし込むにあたり、闇雲に対話を始めるのは得策ではない。タスクの性質や反復性の有無に応じて、適切なアーキテクチャパターンを選択する必要がある。具体的には「プロンプト生成型」「3点セット型」「伴走型」の3つの型に分類して運用するのが極めて合理的だ。
第1の「プロンプト生成型」は、成果物を直接作らせるのではなく、「成果物を作るための専用プロンプト」をAIに生成させるメタプロンプトの手法だ。このパターンの最大のキモは、プロンプトの生成指示文の中に『作成するプロンプトは、最初の応答では確認事項の質問だけを出力して回答を待ち、回答がそろってから成果物を作る構成にしてください』という制約を明示的に焼き込む点にある。この1文を組み込まなければ、LLMは往々にして勝手な自己完結を行い、質問と同時に適当なドキュメントの初稿を出力してしまうという悪癖を発動する。一度この型で生成されたプロンプトは、社内Wikiやチームの共有スニペットとしてストックでき、別のメンバーが質問に回答するだけで均質な成果物を何度でも量産できるようになる。
第2の「3点セット型」は、毎回のアウトプットにおいて『1. 改訂案(現時点の情報で作ったたたき台)』『2. 改善提案(品質を上げるための修正点)』『3. 質問(具体化のために確認したい事項)』の3要素をワンセットで出力させる設計だ。開発におけるアジャイルのスプリントレビューのように、インクリメンタルに成果物が組み上がっていく過程を可視化できる。ドキュメントの骨子を眺めながら「この項目は確定、この制約はまだ未定」と差分を追いやすいため、仕様が流動的でディスカッションを重ねながら育て上げたい要件定義に最も適している。
第3の「伴走型」は、プロジェクト計画の策定やタスクシュリンクに特化した設計だ。単にタスクを書き出させるのではなく、ステップを「1. 質問」「2. 計画」「3. 見直し」のフェーズに厳格に分離する。特に「質問」の段階では、回答者の認知的負荷を下げるために『選択肢や回答例を添えて5問以内で出力せよ』と制約を課す。そして『分からない点は推測で埋めず、仮の前提として明示せよ』と釘を刺すことで、LLM特有の楽観的なスケジュール見積もりや非現実的な技術選定を未然に防ぐことができる。
| 手法 | 構造的特徴 | 実務における最適ユースケース |
|---|---|---|
| ゴールシークプロンプト | AIが逆質問して要件を補完。対話を通じて要件を詰める | 要件が未確定・仕様の考慮漏れをゼロにしたい初期段階 |
| 深津式プロンプト | 命令・制約・入出力を明確に枠組み化して一発生成を狙う | 要件や入力テキストが完全に確定しており、形式を縛りたいとき |
| 七里式プロンプト | 8+1の公式でペルソナやトーンを極めて厳密に多面指定する | 文章のテイストや表現のぶれを極限まで抑え込みたいとき |
日本国内で広く普及している「深津式」や「七里式」といったプロンプトフレームワークは、人間側に明確な要件が存在している前提において、出力のブレを抑え込むための強力なツールである。対してゴールシークは、それらと敵対するものではない。上流の「要件が曖昧なフェーズ」をゴールシークで掘り下げて仕様を確定させ、確定したパラメータを下流の深津式などに流し込んで厳密なフォーマットに清書させる。このパイプラインを意識することこそが、実務におけるプロンプトエンジニアリングの真髄だと私は考える。
実録検証:運用ルールの抽出と動的計画
このアプローチの威力は、実際のユースケースを検証することで明白になる。ソース記事ではOpenAIの次世代モデル「gpt-6-luna」を用いて、現場で頻出する2つの課題に対する検証が行われている。その挙動は極めて示唆に富んでいる。
検証の1つ目は、型1(プロンプト生成型)を用いた「新人エンジニア向けGitブランチ運用ルール」の策定だ。プロンプト生成テンプレートにゴールと成果物(Markdown形式)を流し込むと、AIは前述の制約を忠実に守り、いきなりルール文書を書き始めることなく、12個の精緻な質問リストだけを出力してきた。その内容は『対象リポジトリの開発形態(モノレポかマルチリポジトリか)』『採用ブランチモデル(GitHub FlowかGit Flowか)』『ブランチ命名規則』『PRの承認必須人数とCI条件』『マージ方式(Squash mergeかRebaseか)』など、インフラや開発運用の現場でまさに議論すべき急所をことごとく突いていた。
これに対し、エンジニア側が「GitHub Flowを採用」「Squash merge後にブランチ削除」「1名以上の承認とCI通過が必須」といった運用事実を箇条書きで回答する。すると、次のターンで出力されたMarkdownドキュメントは、チームの運用実態に1ミリの狂いもなく合致した完璧な運用手順書となっていた。人間側が「何を規定すべきか」をゼロから頭を抱えて捻出する必要はなく、AIの問いに「Yes/No」や設定値を答えるだけで、網羅性の担保されたドキュメントが瞬時に手に入るのだ。
さらに興味深いのは、型3(伴走型)を用いた「3か月でのTypeScript在庫管理Webアプリ内製計画」の実証だ。AIは初回、開発者の実力値、週あたりの投入可能時間、管理品目数、認証基盤(Google Workspace)などの前提条件を5つの質問で吸い上げた後、合計60〜120時間という現実的なリソース枠を算出した。そして、技術スタックに「TypeScript + React(Vite) + Supabase」を仮置きし、Excel約300品目のデータ移行までを見据えた12週間のロードマップを提示した。
この計画運用の真価は、現実のプロジェクトで必ず発生する「予期せぬスケジュールの遅延」に対するフィードバックループで見事に発揮された。「本業が多忙を極め、計画の半分しか時間が取れなくなった。来週以降も同様だ」と進捗報告を投げた瞬間、AIは計画を即座に動的リプランニングしたのだ。残り時間を「約22〜45時間」と再計算し、機能を「必須(品目登録・入出庫・Excel移行)」「簡略化(完全削除をやめてアーカイブフラグ処理)」「後回し(CSV出力・詳細な権限管理)」の3層にバッサリと仕分け、最小限の機能で3か月以内に運用開始するための9週間の現実的な圧縮計画を再構築した。この柔軟なリプランニング能力は、まさに熟練のプロジェクトマネージャーが隣で伴走している感覚に近い。
問われるのは「質問に正確に答える力」
ゴールシークプロンプトの運用が日常化するにつれ、我々開発者が直面するのは「プロンプト入力の省力化」という皮肉な現実の先にある、より本質的な技術的・認知的課題である。指示をすべて自力で書かなくて済むようになった反面、AIから投げかけられる鋭利な質問に対して「自分たちのシステムやビジネスの実態を正確に即答できるか」という、回答者としての解像度が容赦なく試されることになるからだ。
AIが「トランザクション分離レベルはどうしますか?」「障害発生時のRPO(目標復旧時点)とRTO(目標復旧時間)の許容値は?」と的確な質問を返してきたとき、もし回答者が「分からない」「一般的によろしく」と答えてしまえば、結局のところ出力は凡庸な推測とハルシネーションの海へと逆戻りする。AIがどれほど優秀なインタビュアーになろうとも、ドメイン固有の制約、組織の力学、ビジネス上のトレードオフを決定する最終責任は、依然として人間にしか持ち得ない。
ゴールシークプロンプトを明日からの実務で武器にするために、我々が今すぐ実践すべき処方箋は極めてシンプルだ。まずは日常の雑多なタスクにおいて、いきなり完成品を要求するのをやめ、末尾に「この成果物を作るために足りない前提情報を、重要な順に3つだけ質問してください」と付け加える習慣を持つことだ。この1行の対話的フックを差し込むだけで、モデルの推測による手戻りは劇的に減少し、AIとの壁打ちは格段に深くなる。
プロンプトを「命令文」として一方的に送りつける時代は終わった。AIに適切な問いを立てさせ、その問いに答えることを通じて自らの設計思想を磨き上げる。コードを書くこと、あるいは指示文を捏造することにリソースを浪費するエンジニアと、AIのヒアリング能力をレバレッジにして本質的な意思決定に集中するエンジニア。この対話設計の巧拙が、これからの開発生産性に埋めようのない決定的な格差を生み出していくのではないだろうか。


コメント