プロンプトエンジニアリング
AIへの指示を最適化する技術
プロンプトエンジニアリングとは、LLM(大規模言語モデル)から望む出力を引き出すために、入力(プロンプト)を設計・最適化する技術です。同じモデルでも、プロンプトの書き方次第で出力の質は大きく変わります。
基本の原則
1. 役割を与える(ロールプロンプト)
あなたは経験豊富なソフトウェアエンジニアです。以下のコードをレビューしてください。
2. 出力形式を指定する
以下の文章を箇条書き3点でまとめてください。
3. 具体的な条件を加える
小学生にもわかる言葉で、200文字以内で説明してください。
4. 例を示す(Few-shot プロンプティング)
入出力の例をいくつか見せることで、AI が期待するパターンを学習します。
例:
入力: リンゴ → 出力: 果物
入力: 電車 → 出力: 乗り物
入力: 桜 → 出力: ?
例示が多いほど精度が上がる傾向がありますが、コンテキスト長を消費するため 3〜5 例程度が実用的です。
Chain-of-Thought(思考連鎖)
複雑な問題には「ステップバイステップで考えてください」と加えると、推論過程を示しながら回答する精度が上がります。
注意点
- プロンプトインジェクション — 悪意ある入力でシステムを操作しようとする攻撃。アプリに組み込む際は入力検証が必要
- 過度な指示 — 制約が多すぎると出力が硬直化する。適度な余白を残す
- 再現性 — 同じプロンプトでも毎回同じ出力とは限らない(確率的な生成)
まとめ
プロンプトの質は AI 活用の成果に直結します。「役割・形式・条件・例」を意識して書くことで、LLM から引き出せる価値が大きく変わります。日常的に試行錯誤を重ねることが上達への近道です。