【要約】LLMのプロンプトエンジニアリング:基礎から理解する「魔法」の正体(第1章、第2章)
1. イントロダクション:AI革命の幕開け
2022年11月末、ChatGPTのリリースは世界に衝撃を与えました。わずか2ヶ月で月間利用者数が1億人を突破するという史上最速の成長は、単なる流行を超えた「パラダイムシフト」の証左です。
この技術の本質は、便利な検索エンジンの代替品ではありません。大規模言語モデル(LLM)は、これまで人間にしかできなかったインタラクションをソフトウェアで実現可能にする、革命的な技術です。プログラミング、執筆、データ抽出、要約、翻訳といった多岐にわたるタスクを、LLMは人間よりも圧倒的に速く、休息なしに実行します。
本書は、この強力な道具を使いこなすための「プロンプトエンジニアリング」という技法を体系的に学ぶためのガイドです。一見「魔法」のように見えるLLMの挙動を、エンジニアとして制御可能な「技術」へと昇華させるための旅をここから始めましょう。
2. 第1章:プロンプトエンジニアリングの世界
1.1 言語モデルの進化の歴史
LLMの登場は突然の変異ではなく、数十年にわたる技術的系譜の到達点です。1948年のマルコフモデルに始まり、2014年のGoogleによるseq2seqアーキテクチャ、そして2017年の「アテンション(注意)機構」を核としたトランスフォーマーの登場が、現在のAI革命の決定的な転換点となりました。
| アーキテクチャ | 特徴 | 課題・制限 |
| seq2seq | 再帰型ニューラルネットワーク。1トークンずつ処理し、内部状態を更新する。 | 「思考ベクトル」が固定サイズのため、長いテキストで情報が失われる情報のボトルネックがある。 |
| トランスフォーマー | 再帰回路を排除し、「アテンション機構」による並列処理と情報の重み付けを行う。 | 学習効率と表現力に優れるが、扱えるトークン量(コンテキストウィンドウ)に物理的な制限がある。 |
GPTシリーズは、このトランスフォーマーのデコーダー部分を拡張し、モデルサイズとトレーニングデータを指数関数的に増加させることで、予期せぬ「知能」を獲得してきました。
- GPT-1 (2018年): 1億1,700万パラメータ。特定のタスクに個別のファインチューニングを必要とした。
- GPT-2 (2019年): 15億パラメータ。40GBのデータで学習。事前学習のみで多様なタスクをこなす兆候を見せた。
- GPT-3 (2020年): 1,750億パラメータ。4,990億トークンで学習。少数の例(Few-shot)を与えるだけであらゆる言語タスクに対応可能になった。
- GPT-4 (2023年): 推定1.8兆パラメータ。学習データ量は推定13兆トークンに達し、推論能力において旧バージョンを圧倒する。
1.2 プロンプトエンジニアリングの定義と階層
プロンプトエンジニアリングの本質は、LLMの「テキスト補完能力」を最大限に引き出すことにあります。アプリケーション開発における洗練度には、以下の5つのレベルが存在します。
- 直接的なプロンプト作成: チャット形式での単純な指示。
- RAG(検索拡張生成): 外部知識や関連ドキュメントをプロンプトに組み込み、回答の精度を高める。
- ステートフルな対話: 過去の会話履歴を維持・要約し、文脈に応じた継続的な対話を実現する。
- ツールの利用: APIを通じてLLMを実世界と接続し、カレンダー予約やメール送信などのアクションを実行させる。
- エージェント機能: 広範な目標に対し、モデル自身が多段階のプロセスを自律的に判断・実行する。
3. 第2章:LLMの内部動作を理解する
2.1 「文字列を返すサービス」としてのLLM
LLMは、本質的には「文字列を入力すると、統計的に最もありそうな続きの文字列を返す」サービスです。重要なのは、LLMがデータを単に丸暗記しているのではなく、データ内のパターンや推論プロセスを「抽象化」して学習している点です。
優れたプロンプトを作成するためには、「合理的な人間ならどう答えるか」ではなく、「このプロンプトで始まるドキュメントを統計的に最も自然に続けるなら、どのようなテキストが来るか」という視点を持つことが不可欠です。
2.2 ハルシネーション(幻覚)と真実バイアス
LLMは常に「推測」を行っています。そのため、事実に基づかないもっともらしい嘘をつく「ハルシネーション」が発生します。これはモデルが「常に次のトークンを予測し続けなければならない」という宿命から生じるものです。
真実バイアス LLMはプロンプトに含まれる前提を正しいものとして受け入れる傾向があります。例えば、「2031年、ネアンデルタール人が復活してから1年が経過しました」という文章で始めれば、モデルはあえて誤りを訂正せず、その架空の前提(擬似ドキュメント)を補完するように振る舞います。この「バイアス」を理解すれば、特定のシナリオに基づいた推論を導き出すエンジニアリング手法として転用可能です。
4. トークナイザー:LLMが見る世界
3.1 文字ではなく「トークン」で捉える
人間は文字を単語として認識しますが、LLMは「トークン」という複数文字のチャンク(塊)単位で世界を捉えています。この「視覚の違い」が、人間には簡単な作業をLLMにとっての難題に変えてしまいます。
象徴的な例が、**「strawberryという単語に含まれる『r』の数を数える」**というタスクです。多くの最新モデルでさえ、この問いに誤答することがあります。なぜなら、トークナイザーが「strawberry」を「straw」「ber」「ry」といったトークンに分解して処理しているため、モデルの内部では個々の「r」という文字が直接見えていないからです。
同様の理由で、モデルは以下の作業を苦手とします。
- 単語内の文字を逆から綴る(例:「one example」を「eno elpmaxe」にする)。
- 大文字・小文字の厳密な変換(大文字を含むトークンと小文字のトークンは、モデルにとって全く別の数値として扱われるため)。
3.2 コンテキストウィンドウとコスト
LLMが一度に扱えるトークン量には「コンテキストウィンドウ」という上限があります。これは単なる計算リソースの制限ではなく、設計思想上の大きな制約です。プロンプトエンジニアは、この有限のリソースをいかにマネジメントするかという、設計者としての視点が求められます。
5. サンプリング:次のトークンを選ぶ仕組み
4.1 自己回帰(Auto-regressive)プロセス
LLMは1トークンずつ予測を繰り返し、それをプロンプトに付け足していく「自己回帰」プロセスで動いています。ここで極めて重要な事実は、**「LLMには後戻りや書き直し(Undo)ができない」**ということです。人間は書きながら途中で消したり修正したりできますが、モデルは一度出力したトークンを前提として次を予測し続けなければなりません。この「引き返せない」性質が、一度陥った誤りを修正できずに突き進んでしまうハルシネーションの大きな要因となっています。
4.2 Temperature(温度)による制御
次のトークンを選ぶ際の「創造性」や「ランダム性」を制御するのがTemperatureパラメータです。
| Temperature値 | 特徴 | 推奨されるシーン |
| 0 | 決定論的。最も確率が高いトークンを常に選択。 | 正確性と再現性が最優先のタスク(コード生成など)。 |
| 0.1 ~ 0.4 | わずかな多様性を持たせる。 | 複数の回答候補から最良のものを選びたい場合。 |
| 0.5 ~ 0.7 | 偶然性の影響を強める。 | 創造的な文章作成や、多様なアイデア出し。 |
| 1.0 | トレーニングデータの確率分布をそのまま反映。 | データの統計的な偏りをそのまま再現したい場合。 |
| > 1.0 | 確率の低いトークンも選ばれやすくなる。 | 非常に乱雑で、「酔っぱらったような」支離滅裂な出力リスクがある。 |
Temperatureを1.0より大きく設定すると、モデルは一貫性を失いやすくなります。これはサンプリングが最終層でのみ作用し、モデル本体の論理的な確率計算そのものを改善するわけではないからです。
6. まとめ:次なるステップへ
プロンプトエンジニアリングの根底にある最も重要な認識は、**「LLMは本質的に、提供されたテキストを模倣する統計的な補完エンジンである」**ということです。
魔法のように見える対話も、その実体は「統計的な模倣という物理法則」に基づいたトークン予測の積み重ねに過ぎません。優れたプロンプトエンジニアになるためには、この仕組みを深く理解した上で、モデルへの「共感能力」を持ってプロンプトを設計する必要があります。LLMがどう「考え」、どう「見て」いるのかを知ることで、私たちは初めてこの強力なツールを真に制御できるようになります。
この基礎的な「正体」を理解した今、あなたはより実践的なチャット形式の設計や、複雑なアプリケーション構築の世界へと進む準備が整いました。




最近のコメント