38歳が『LLMのプロンプトエンジニアリング』を読んでブログ自動投稿システムに実装したコンテキスト設計3原則:スカフォールディング・テンプレート化・評価ループを個人開発に適用する

なぜこの本を手に取ったのか

個人ブログの自動投稿システムを Claude Code で構築して3ヶ月、出力の「ブレ」に悩んでいた。同じプロンプトを投げても日によって構成が変わる。事実と推測が混ざる。参考文献リンクが抜ける。

『実践Claude Code入門』でサブエージェント設計の骨格は掴んだが、「なぜこのプロンプトだと安定するのか」の原理が欲しかった。そこで手に取ったのが『LLMのプロンプトエンジニアリング』。GitHub Copilot の設計者 Albert Ziegler らが書いたオライリー本だ。

読んで分かったのは、プロンプトは「命令文」ではなく「コンテキストの設計図」だということ。この本で得た3つの原則を自動投稿システムに実装したら、出力の安定性が体感で3割改善した。

実装1:スカフォールディング——プロンプトに構造を埋め込む

本書の第3章「Scaffolding(足場)」が最初の転機だった。LLMは「次に何を書くべきか」の手がかりが多いほど精度が上がる。コードで言えば関数名・型注釈・コメントがそれに当たる。

自動投稿システムでは、プロンプトの冒頭に「著者事実台帳」「読了書籍リスト」「直近記事タイトル一覧」の3つを毎回差し込むようにした。これがスカフォールディング。事実の根拠を先に渡すことで、LLMが「推測で埋める」余地を減らせる。

具体的にはこう書く:

【著者事実台帳 — 以下の事実から外れた内容を書くのは厳禁】
- 年齢: 38歳
- NDT検査歴: 約20年
- 法人: 株式会社US(代表取締役)
(中略)

【うりさんが読了した書籍リスト — 記事の出典はここから選ぶ】
### LLMのプロンプトエンジニアリング
- ASIN: 4814401132
- カテゴリ: code
(以下略)

この「事前ロード」によって、記事本文で未読書籍を引用するミスはゼロになった。年齢・経歴の食い違いも消えた。

実装2:テンプレート化——出力フォーマットを型として固定する

第5章「Template-based Prompting」で学んだのは、出力形式を JSON や Markdown で先に示すと、LLMがその「型」に沿って生成する習性だ。

当初は「記事を書いて」とだけ指示していたが、これだと構成が毎回変わる。そこで出力形式を以下のテンプレートで固定した:

{
  "title": "記事タイトル",
  "slug": "short-english-slug",
  "description": "メタ説明(120字程度)",
  "categories": ["biz" | "code" | "fi" | "life" | "side" から12],
  "body": "## H2見出し\n\n本文(Markdown)...",
  "tweet": "X投稿文(140字以内)"
}

プロンプトの末尾に「出力は以下のJSON形式のみ(前後に説明文なし)」と書き、このテンプレを提示する。すると Claude は必ずこの形式で返してくる。パース処理が安定し、手動修正の頻度が激減した。

実装3:評価ループ——生成後のチェックリストを組み込む

第7章「Evaluation and Iteration」で気づいたのは、プロンプトは一発で完成しないということ。生成→評価→改善のループを回す設計が必要だ。

自動投稿システムでは、記事生成後に以下のチェックリストを走らせている:

  1. 著者事実台帳の年齢(38歳)と矛盾する記述がないか
  2. 読了書籍リストにない本を引用していないか
  3. 参考URLが3件以上あるか、公式サイトのトップ階層に留まっているか
  4. アフィリエイトリンクが「もしも経由URL」のテンプレート形式か
  5. 文字数が1,500〜2,500字の範囲内か

このチェックリストをプロンプトに書き込んだ結果、「書いてはいけないこと」を書くミスが大幅に減った。評価基準を明示することで、LLM自身が自己検証する構造になっている。

プロンプトは「命令」ではなく「コンテキストの設計」

本書を読んで最も腹落ちしたのは、「プロンプトエンジニアリングはコンテキスト設計である」という一文だ。LLMは命令を実行するのではなく、与えられた文脈から「次に来るべきテキスト」を予測する。

だから「記事を書いて」ではなく、「こういう事実があり、こういう構造で、こういう出力形式で、こういう禁止事項を守って書く」という文脈を設計する。それがプロンプトの本質だ。

個人開発でも、スカフォールディング・テンプレート化・評価ループの3原則は使える。特にブログ自動投稿のような「繰り返し生成するタスク」では、プロンプトをコードと同じように「設計・テスト・リファクタリング」するサイクルが重要だと分かった。

まとめ

『LLMのプロンプトエンジニアリング』から得た3つの実装:

  1. スカフォールディング:著者事実台帳・書籍リスト・直近記事を事前ロード
  2. テンプレート化:JSON形式で出力フォーマットを型として固定
  3. 評価ループ:チェックリストをプロンプトに組み込んで自己検証させる

この設計で、ブログ自動投稿の出力精度が体感3割改善。プロンプトは命令ではなくコンテキストの設計図だと理解できた。個人開発でも、LLMを「書かせる」のではなく「文脈を渡して予測させる」設計が有効だ。

関連書籍

LLMのプロンプトエンジニアリング

GitHub Copilot設計者によるプロンプト設計論。コンテキスト・スカフォールディング・テンプレート化の概念地図が、個人開発の自動化システムにそのまま応用できる。

参考

← ブログ一覧へ戻る