ChatGPT

プロンプト

プロンプトエンジニアリングで可能な例やアプリケーションをさらに多く取り上げるにつれて、プロンプトを構成する特定の要素があることに気付くでしょう。プロンプトには、以下のコンポーネントが含まれます。

  • 指示 - モデルに実行してほしい特定のタスクや指示
    • 「書く」「分類する」「要約する」「翻訳する」「並べ替える」など、モデルに目的を達成させるよう指示するコマンドを使って、さまざまなシンプルなタスクに効果的なプロンプトを設計することができます。
    • 指示と文脈を区切るために、「###」のような明確なセパレータを使用することもお勧めされています。
    • プロンプトが詳細で説明的であればあるほど、結果は良くなります。
    • プロンプトを設計する際には、具体的で直接的であることが重要です。
    • やらないことを言うのではなく、代わりにやることを言う。
  • 文脈 - 外部情報や追加の文脈を含めることで、モデルがより良い回答に導かれる
  • 入力データ - 応答を見つけたい入力や質問
  • 出力指標 - 出力のタイプや形式を示す。

より良い結果を得るためのプロンプトの改善させる概念

  • Zero-Shot Prompting
    • 大量に訓練され調整されたLLMは、命令だけ(ゼロショット)でタスクを実行できる
  • Few-Shot Prompting
    • より複雑なタスクではゼロショットでは不十分。プロンプトの中でデモンストレーション(例を示す)をおこなうことでモデルの性能を向上させることができる。数発のプロンプトで文脈を使って学習させることができる。
      • デモンストレーションで示す入力と結果の分布はどちらも重要
      • 一様な分布じゃなく、ランダムな分布でもない場合より有効
      • 本当の分布に合わせた分布でデモンストレーションすることでさらなる学習の助けになる
    • 推論問題に対してはfew-shotでは不十分。
  • Chain-of-Thought Prompting(CoT)

dair-ai/Prompt-Engineering-Guide: Guides, papers, lecture, and resources for prompt engineeringの抜粋

参考