😎

プロンプトエンジニアリングのベストプラクティス

2024/12/22に公開

TL;DR(要約)

  • この記事の主旨: 生成AIを使うときの「プロンプト作成」のポイントをまとめ、実務や学習に役立てる
  • 4つの基本ステップ: ①ゴール設定 → ②コンテキスト整理 → ③出力形式指定 → ④改善指示
  • よく使うシーン: 翻訳、要約、コード生成、アイデア出し、スケジュール管理、セールスコピー など
  • テクニック例: 根拠つき回答、権威ある情報参照、文字数制限、先読み要求、パラメータチューニング
  • 大切なこと: まずはシンプルに試し、AIの出力を見て「どこが不十分か」を再度指示し、段階的に完成度を上げる

では、詳細を見ていきましょう!✨


1. プロンプトの基本ステップ

「AIに質問してみたけど、求める回答が得られない...」という経験はありませんか?
その原因の多くは、プロンプトのあいまいさにあります。以下の4ステップを意識するだけで、出力品質が格段に向上します。

  1. ゴールを明確にする

    • 例: 「翻訳の質を上げたい」「新規Webサービスの要件定義書が欲しい」「セールスコピーを作りたい」
    • ポイント: 「誰向けに、何が欲しいか」を明示
  2. コンテキストを整理する

    • 例: ターゲット層、使用技術、専門用語リスト、制約条件(納期・コスト・字数など)
    • ポイント: 必要な背景情報をリスト化し、AIが混乱しないようにする
  3. 出力形式を指定する

    • 例: 「Markdown形式」「箇条書き」「表」「コードブロック」
    • ポイント: そのまま使える形にすれば、作業効率アップ
  4. 改善指示を付与する

    • 例: 「根拠を付けて回答」「エラー処理を詳細化」「文体をカジュアルに」など
    • ポイント: いきなり完璧を目指すより、「まず出力→ここを修正」と複数回まわす

今すぐできるアクションリスト

  1. ゴール・背景をA4一枚にサッと書き出し
  2. 出力形式を決める(Markdown?コード?)
  3. 「改善指示」を1つでも入れる(冗長表現なし、など)

2. 用途別のプロンプト応用例

2-1. 翻訳 × 根拠付き回答 🗣️

  • 目的: 「専門用語の正確さ + 文体を自然に」
  • 例プロンプト:
    あなたは工業系の翻訳者です。以下の英語文章を日本語に翻訳してください。
    - 必要情報:
      1. 用語の訳語はISO規格に準拠
      2. 語尾は「〜する/〜である」調
    - 出力形式: 日本語テキスト
    - 改善案提示: 要
    - 追加指示: 回答には、訳語をどう選んだかの根拠も含めて記載してください。
    
  • ポイント: 「根拠つき回答」を要求すると、曖昧さを減らせる

2-2. 要約 × 権威ある情報参照 📑

  • 目的: 「長い論文を短くまとめ、どこがポイントかを示してほしい」
  • 例プロンプト:
    あなたはディープラーニングの専門家です。以下の本文を要約し、
    最先端の研究成果として権威あるソース(例: NeurIPS, Natureなど)も参照してください。
    - 必要情報:
      1. 研究対象: 画像認識
      2. 読者層: AI初心者
    - 出力形式: Markdown箇条書き + キーワード
    - 改善案提示: 要
    
  • ポイント: 権威あるソース参照をAIに求めると「ただの一般論」から一歩踏み込んだ内容を期待できる

2-3. コード生成 × 文字数制限 💻

  • 目的: 「TypeScriptでCRUD機能の雛形が欲しい。ただし掲載スペースの都合で300行以内に」
  • 例プロンプト:
    あなたはフロントエンドエンジニアです。以下の情報をもとにReact + TypeScriptで簡単なCRUDアプリを作成してください。
    - 必要情報:
      1. 機能: タスクの追加・編集・削除
      2. APIとの接続部分はモック化
    - 出力形式: コードブロック
    - 改善案提示: 要
    - 文字数制限: 全体で300行以内(コメント含む)
    
  • ポイント: 文字数や行数を明示すると、後編集の手間が減る

2-4. アイデアブレスト × 先読み要求 💡

  • 目的: 「新規サービスのネーミング案が欲しい」
  • 例プロンプト:
    あなたはクリエイティブディレクターです。以下の情報をもとに、
    新規サービスのネーミング候補を考えてください。
    - 必要情報:
      1. ターゲット: スマホユーザー
      2. コンセプト: タスク管理+SNS要素
    - 出力形式: 箇条書き
    - 先読み要求: 複数候補と、それぞれのメリット/デメリットを挙げてから、最適案を提示
    
  • ポイント: 候補を先に出させてから一番良い案を選ばせる→アイデアのバリエーションと選定理由を同時に得られる

2-5. スケジュール作り / セールスコピーなど

  • 同様に、ゴール+コンテキスト+出力形式+改善指示をセットにして明確化すると、短時間で使える成果物を得られます。

今すぐできるアクションリスト

  1. 自分がやりたい用途(翻訳/要約/コード/アイデア...)を1つ選ぶ
  2. 今回のポイント(根拠付き回答、権威ある情報参照、文字数制限など)から何か試したいものを入れる
  3. AIに投げる → 戻ってきた内容を観察 → 改善ポイントをさらに追記

3. テンプレートとチェックリスト

3-1. 汎用テンプレート

あなたは[役割]です。以下の情報を基に、[目的]を達成するための[成果物]を作成してください。

- 必要情報:
  1. [前提1]
  2. [前提2]
- 制約条件:
  1. [条件1]
  2. [条件2]
- 出力形式: [Markdown/箇条書き/プログラムコードなど]
- 改善案提示: [要/不要]
- (応用例) 根拠付き回答: [要/不要]
- (応用例) 文字数/行数制限: [指定する場合はここに書く]
- (応用例) 先読み要求: [例: 選択肢列挙→ベスト案提示]

3-2. 簡易チェックリスト

  1. ゴール明確化: 「誰向け、何を達成したいか」
  2. 前提情報・制約条件: リスト化しているか?
  3. 出力形式: 具体的に指定しているか?
  4. 改善指示: (根拠・権威あるソース・文字数制限・先読み要求 etc.)入っているか?

4. 生成AIを自己改善させる方法

4-1. 対話形式でのブラッシュアップ 💬

ユーザー: 「このブログ記事アウトラインを、もう少し短くできる?」
AI: 「わかりました。以下の3つのポイントを修正すると短くなります… 修正例は次のとおりです…」

  • メリット: AIの提案→こちらの要望→再提案という形で、段階的に完成度を上げられる。

4-2. 自己批評 & スコアリング ⭐

以下の出力を、情報量・可読性・論理の一貫性の観点で10点満点で採点し、
不足点を3つ指摘したうえで修正版を提示してください。
  • メリット: AIが自ら「ここは冗長」「ここは不足」などを挙げ、解決策と修正版を同時に示す。

今すぐできるアクションリスト

  1. AIに「どこが足りてない?」と尋ねてみる
  2. スコアをつけてもらい、改善案と修正版を同時に出させる
  3. 納得できるものが出るまで数回やりとりを重ねる

5. パラメータチューニングのヒント

生成AI(ChatGPTなど)では、TemperatureTop-pといったパラメータで回答の創造性や安定性を制御できます。

  • Temperature: 高いほどランダム性UP→創造的・奇抜な回答を得やすい
  • Top-p: 確率分布を制限。0.9に設定すると、上位90%の候補トークンからのみ選ぶイメージ

具体例

  • Scenario A: Temperature=0.2, Top-p=0.9
    • 期待: 割と定型的だが、ある程度のバリエーションを出してくれる。報告書、辞書的回答向け
  • Scenario B: Temperature=0.8, Top-p=1.0
    • 期待: 創造性が高く、型破りなアイデアが出やすい。ネーミング、キャッチコピー向け

今すぐできるアクションリスト

  1. 同じプロンプトでTemperature/Top-pを変えて実験
  2. A/B比較し、どの数値が自分の用途に合うか確認
  3. 気に入った設定をメモ(「創造的アイデア用」「ビジネス文書用」など)

6. 失敗例に点数をつける実践

6-1. 悪いプロンプト例

「要件定義書を作成してください。」

6-2. AIへの指示

上記のプロンプトを10点満点で採点し、その理由を3つ挙げてください。
さらに改善案を示し、改善案を反映した最終的なプロンプトを提示してください。

6-3. 結果イメージ

  1. 採点: 例「3/10」
  2. 理由: 目的が曖昧、必要情報不足、出力形式指定なし
  3. 改善案: 必須機能・制約条件・成果物形式の明記
  4. 修正版: 情報が整ったプロンプトが自動生成

7. まとめ & 次のステップ

7-1. この記事で伝えたこと

  1. 基本ステップ: ゴール設定 → コンテキスト → 出力形式 → 改善指示
  2. 用途別応用 + テクニック融合: 翻訳×根拠付き回答、要約×権威ある情報参照、など
  3. 対話的ブラッシュアップ & スコアリング: 段階的に出力を洗練
  4. パラメータ調整: Temperature, Top-pを使い分けて創造性 or 安定性を制御
  5. その他テクニック: 根拠付き回答、権威ある情報、文字数制限、先読み要求など

7-2. 今すぐできる行動リスト ✨

  1. テンプレートを自分用にカスタマイズし、一度AIに投げてみる
  2. 結果を見て「足りない情報」「欲しい追加要素」をAIに質問
  3. TemperatureやTop-pを変えて比較し、好みの設定を発見
  4. スコアリング指示を使って、AIに自己批評→修正版を出させる

8. Q&A形式での対話例(参考)

ユーザー:
「このブログ記事アウトラインを、もう少し短く・初心者向けに書いてもらえる?」

AI:
「以下の3点を修正すれば短くなり、初心者にも分かりやすくなります… 修正後はこちらです…」


おわりに

プロンプトエンジニアリングのコツは、まず試す→結果を見て改善点をフィードバック→再出力の繰り返しです。

  • ゴール、コンテキスト、出力形式、改善指示の4ステップを軸に、
  • 根拠付き回答や権威ある情報参照、文字数制限、先読み要求などのテクニックを組み合わせ、
  • 温度感(Temperature)や多様性(Top-p)を調整しながら、
  • どんどんブラッシュアップしていきましょう。

これらの手法を駆使して、みなさんのプロジェクトやアイデアがさらにスピードアップし、創造性豊かになることを願っています。疑問や質問があれば、ぜひコメントでお知らせください!ありがとうございました!

Discussion