プロンプトの書き方で、AIの実力は全然変わる
ミドリ: タツヤさん、同じChatGPT使ってるのに、自分が書くと微妙な回答しか返ってこないんですよ。隣の席の先輩はめちゃくちゃ良い回答引き出してるのに……。
タツヤ: それ、AIの性能の問題じゃなくて「プロンプトの書き方」の問題だよ。プロンプトエンジニアリングって言うんだけど、適切に設計すると同一モデルの出力品質が最大40〜60%向上するってデータがある。
ミドリ: 4〜6割も!? コードを一行も変えずに?
タツヤ: そう。これがプロンプトエンジニアリングの魅力。しかも3つの大きなメリットがある。
- コスト効率 — モデル変更やFine-tuningなしで改善できるから、最もコスパが高い
- 再現性 — テンプレート化してチームで共有すれば、担当者によるばらつきを大幅に減らせる
- 即時性 — 修正がリアルタイムに反映されるから、素早くイテレーションが回せる
ミドリ: じゃあ今日はその技術を教えてください!
基本テクニック:7つの原則
タツヤ(nodding): まずはすべての土台となる7つの基本原則から。
1. 明確な役割を与える(Role Setting)
タツヤ: AIに「あなたは○○の専門家です」と役割を与えると、回答の質と一貫性が上がる。
悪い例:
売上データを分析してください。
良い例:
あなたは10年以上の経験を持つデータアナリストです。
以下の売上データを分析し、主要なトレンド、異常値、
改善機会を特定してください。分析結果は経営層向けの
レポート形式でまとめてください。
ミドリ(nodding): 確かに、役割を指定すると回答のトーンや専門性が変わりますね。
2. コンテキストを十分に提供する
タツヤ: AIは与えられた情報の範囲内でしか答えられない。背景を書けば書くほど、的確な回答が返ってくる。
悪い例:
マーケティング戦略を提案してください。
良い例:
当社はB2B SaaS企業で、従業員50名、ARR(年間経常収益)は
3億円です。主要な顧客は製造業の中堅企業で、現在の顧客数は
120社です。来期の目標はARRを4.5億円にすることです。
限られた予算(月額200万円)で最大の効果を得るための
デジタルマーケティング戦略を3つ提案してください。
ミドリ: 前者だと「どの業界のどの規模の会社かもわからない」状態ですもんね。
3. 出力形式を明確に指定する
タツヤ: 期待する形式を具体的に指定すれば、後処理の手間が大幅に減る。
以下の形式でJSON出力してください:
{
"summary": "3文以内の要約",
"key_points": ["ポイント1", "ポイント2", "ポイント3"],
"risk_level": "高/中/低",
"recommendation": "推奨アクション"
}
4. 制約条件を明示する
タツヤ: 「何をしてほしいか」だけでなく「何をしてほしくないか」も明確にする。
以下の制約に従ってください:
- 200文字以内で回答すること
- 専門用語を使う場合は必ず簡潔な説明を括弧内に付けること
- 不確実な情報は「推定」と明記すること
- 競合他社の名前は出さないこと
ミドリ: 制約がないと、AIが自由に書きすぎちゃうってことですね。
5. 具体的な例を示す(Few-shot Learning)
タツヤ: 入出力のペアを見せると、AIがそのパターンを学習して同じ形式で回答してくれる。
以下の例に従って、カスタマーレビューを分類してください。
例1:
レビュー: 「配送が早くて助かりました」
分類: ポジティブ | カテゴリ: 配送
例2:
レビュー: 「サイズが合わなかった」
分類: ネガティブ | カテゴリ: 商品品質
では、以下のレビューを分類してください:
レビュー: 「カスタマーサポートの対応が丁寧でした」
ミドリ(surprised): 3〜5個の例を見せるだけでこんなに変わるんですか。
タツヤ: 分類タスクやフォーマット統一には特に効果的だよ。
6. 段階的に指示する(Step-by-Step)
タツヤ(thinking): 複雑なタスクは一度に全部指示するんじゃなくて、ステップに分ける。
以下の手順で競合分析レポートを作成してください。
ステップ1: 提供されたデータから各競合企業の強みと弱みを整理
ステップ2: 市場シェアの推移から競争環境のトレンドを分析
ステップ3: 自社の差別化ポイントを3つ特定
ステップ4: 今後12ヶ月間の推奨アクションプランを策定
7. 区切り文字で構造を明確にする
タツヤ: 長いプロンプトでは、セクションごとに区切り文字を使って構造化する。
###指示###
以下のテキストを要約してください。
###制約###
- 3文以内
- 重要な数字は保持
###テキスト###
(ここに要約対象のテキストを配置)
###出力形式###
要約: [要約テキスト]
キーワード: [重要キーワード3つ]
ミドリ: プログラムのコメントみたいに構造化するんですね。
高度なテクニック
ミドリ(nodding): 基本原則はわかりました。もっと上級のテクニックも知りたいです!
タツヤ: よし、5つの高度な手法を紹介しよう。
Chain-of-Thought(思考の連鎖)
タツヤ(thinking): AIに「考えるプロセス」を明示的に促す手法。複雑な推論や計算で劇的に効く。数学的推論タスクでは正答率が40%以上向上するケースもある。
以下の問題について、段階的に考えてから結論を述べてください。
問題: A社の月間売上が1,200万円、固定費が400万円、
変動費率が売上の45%の場合、損益分岐点売上高はいくらですか?
まず、変動費率と限界利益率の関係を整理し、
次に損益分岐点の計算式を適用してください。
途中計算も省略せず記載してください。
ミドリ: 「いきなり答えを出せ」じゃなくて「考える過程を見せろ」って指示するんですね。
Self-Consistency(自己整合性)
タツヤ: 同じ質問に対して複数の回答を生成させて、最も一貫性のある回答を採用する手法。temperatureを高め(0.7〜1.0)にして3〜5回回答させて、多数決や統合で最終回答を決める。
ミドリ: 「3人の専門家に聞いて、多数決を取る」みたいな感じですか。
タツヤ: まさにそう。正解が1つに定まらない分析タスクや意思決定支援で特に効果的。
Tree-of-Thought(思考の木)
タツヤ: 複数のアプローチを並行して検討させて、最も有望なものを深堀りする手法。
以下の課題に対して、3つの異なるアプローチを提案してください。
各アプローチについて、メリット・デメリット・実現可能性を
10点満点で評価してください。
最も評価の高いアプローチについて、詳細な実行計画を策定してください。
課題: 既存のオンプレミス社内システムをクラウド移行する最適な戦略
ReAct(Reasoning + Acting)
タツヤ: 推論と行動を交互に繰り返させるパターン。AIエージェントの動作原理として広く使われてる。
以下の質問に答えるため、「思考→行動→観察」のサイクルを繰り返してください。
質問: 東京都で最も効果的なオフィス移転先はどこか?
思考1: まず、移転先を評価する基準を定義する必要がある
行動1: 評価基準(交通アクセス、賃料、従業員の通勤利便性、
ビジネス環境)をリストアップ
観察1: [評価基準のリスト]
思考2: 次に、各エリアを評価基準に基づいてスコアリングする
...
メタプロンプト(プロンプトを生成するプロンプト)
ミドリ: プロンプトを作るのをAIに手伝ってもらう……ってことですか?
タツヤ(nodding): その通り。最初の雛形を書いて、AIに改善点を提案させる。
以下のプロンプトを改善してください。
改善の観点は以下の通りです:
1. 曖昧な表現をより具体的にする
2. 不足している制約条件を追加する
3. 出力品質を高めるための追加指示を提案する
元のプロンプト:
「売上レポートを作成してください」
ミドリ: プロンプトの改善をAIに任せるって、メタ感ありますね(笑)。
業務別テンプレート集
ミドリ: すぐに使えるテンプレートってありますか?
タツヤ: 3つ紹介するよ。コピペしてカスタマイズすればすぐ使える。
テンプレート1:議事録作成
あなたはプロの議事録作成者です。以下の会議の音声書き起こしから、
構造化された議事録を作成してください。
###出力形式###
1. 会議概要(日時・参加者・目的)
2. 議論の要点(各アジェンダに対して3〜5行で要約)
3. 決定事項(箇条書き)
4. アクションアイテム(担当者・期限を含む表形式)
5. 次回会議の予定
###制約###
- 発言者の意見は客観的に記録する
- 個人的な感想や推測は含めない
- 専門用語は初出時に括弧内で説明を付ける
###書き起こしテキスト###
[ここに音声書き起こしテキストを貼付]
テンプレート2:コードレビュー
あなたはシニアソフトウェアエンジニアです。
以下のコードをレビューし、フィードバックを提供してください。
###レビュー観点###
1. バグまたは潜在的な問題
2. パフォーマンス改善の余地
3. セキュリティ上の懸念
4. 可読性・保守性の改善提案
5. ベストプラクティスへの準拠度
###出力形式###
各指摘について以下の形式で記載:
- 重要度: 高/中/低
- 該当箇所: 行番号または関数名
- 問題: 問題の説明
- 推奨: 改善案(コード例を含む)
###対象コード###
[ここにレビュー対象のコードを貼付]
テンプレート3:メール文面作成
あなたはビジネスコミュニケーションの専門家です。
以下の情報をもとに、ビジネスメールを作成してください。
目的: [例:プロジェクト遅延の報告と対策の説明]
宛先: [例:クライアントの担当部長]
トーン: [例:丁寧だが率直に]
キーメッセージ:
1. [伝えたい内容1]
2. [伝えたい内容2]
3. [伝えたい内容3]
###制約###
- 300文字以内
- 敬語を使用(過度にへりくだらない)
- 具体的な日付や数値を含める
- 明確なNext Stepを提示する
ミドリ: これはそのまま使えそう! チームで共有したいです。
よくある落とし穴
ミドリ: やっちゃいけないパターンも知りたいです。
タツヤ: 4つの典型的な失敗パターンがある。
1. 情報の詰め込みすぎ
タツヤ: プロンプトが長すぎると、AIは重要な指示を見落とす。1つのプロンプトで達成する目標は1〜2個に絞ること。
2. 曖昧な表現
タツヤ: 「良い感じに」「適切に」「うまく」は禁句。「3つの箇条書きで」「200文字以内で」みたいに定量的な基準を示そう。
3. ネガティブ指示への過度な依存
タツヤ: 「〜しないでください」より「〜してください」の方が効果的。「専門用語を使わないで」じゃなくて「中学生でも理解できる平易な言葉で説明して」に書き換える。
ミドリ: 「やるな」より「こうやれ」の方が伝わる、と。人間への指示と同じですね。
4. テストの不足
タツヤ: プロンプトは様々な入力パターンでテストする必要がある。エッジケース(極端に短い入力、想定外の言語、不完全な情報)に対する挙動も必ず確認しよう。
プロンプトの評価と改善サイクル
ミドリ: プロンプトって一回作ったら終わりじゃないんですか?
タツヤ: むしろ継続的な改善が大事。3つのステップで回していく。
評価指標の設定
タツヤ: タスクに応じて評価指標を設定する。
- 正確性 — 事実に基づいた正しい回答かどうか
- 関連性 — 質問の意図に沿った回答かどうか
- フォーマット準拠 — 指定した形式に従っているかどうか
- 一貫性 — 同じ質問に安定した品質の回答が返るかどうか
A/Bテストの実施
タツヤ: プロンプトのバリエーションを複数作って、同一の入力セットに対する出力を比較評価する。10〜20件のテストケースで定量的に比較すれば、客観的に優劣を判断できる。
バージョン管理
タツヤ: プロンプトもコードと同じようにバージョン管理する。変更履歴、変更理由、テスト結果を記録しておくことで、チーム内でのナレッジ共有と品質の継続的な向上が可能になる。
ミドリ: プロンプトもGitで管理する時代なんですね。
まとめ:プロンプトエンジニアリングはAI活用の「必須スキル」
ミドリ: 今日の話をまとめるとどうなりますか?
タツヤ(nodding): ポイントは4つ。
- 7つの基本原則(役割設定、コンテキスト提供、出力形式指定、制約条件、Few-shot、段階的指示、区切り文字)で出力品質の底上げができる
- 高度なテクニック(Chain-of-Thought、Self-Consistency、Tree-of-Thought、ReAct)で複雑なタスクにも対応できる
- 業務別テンプレートを整備すれば、チーム全体のAI活用水準を標準化できる
- 継続的な改善サイクル(評価指標の設定→A/Bテスト→バージョン管理)でプロンプト品質は着実に向上する
ミドリ: AIの性能を引き出すのも、結局は「人間側の技術」なんですね。
タツヤ(nodding): その通り。プロンプトの改善だけでAI投資のROIを大幅に引き上げられる。一番コスパのいいAI活用改善手段だよ。
次のアクション
ミドリ: 最後に、今日からやれることを教えてください。
タツヤ: 3つあるよ。
- 基本原則を1つ選んで、今日使っているプロンプトに適用してみよう。最も効果が出やすいのは「役割設定」と「出力形式の指定」
- チーム内でプロンプトテンプレート集を共有して、属人化を解消しよう
- 体系的なプロンプト設計やAI活用戦略の策定については、Shimanto AI Solutionsがワークショップやコンサルティングを通じてサポートします。プロンプトの最適化だけでAI投資のROIを大幅に改善できるケースを数多く経験しています