【ChatGPT】魅力と可能性を引き出すプロンプトエンジニアリングのコツ:プロンプトの26の原則を活用しよう
今回はプロンプトエンジニアリングへの理解を進めていく上で、2023年12月26日に公開された「Principled Instructions Are All You Need for Questioning LLaMA-1/2, GPT-3.5/4」の論文内で公開されていたプロンプトのプロセスを改善することを目指した26の指導原則について紹介していきます。
- プロンプトの送信回数10回
- 使用したモデル:Microsoft Copilot、ChatGPT、Gemini Advanced
- Microsoft Copilotは旧Bing Chatのことを指し、Microsoft Copilot for Microsoft 365とは異なります。
AIとデジタルイノベーションでビジネスを変える時が来ました。
私たちと一緒に、効果的なマーケティングとDXの実現を目指しませんか?
弊社では、生成AI開発やバーチャルインフルエンサーの運用について無料相談を承っております。
お打ち合わせではなくチャットでのご相談もお待ちしております。
目次
プロンプトエンジニアリングって?
プロンプトエンジニアリングの重要性
プロンプトの26の原則
26の原則を踏まえたプロンプトの具体例
この記事は、AI(人工知能)によって生成されたものです。
内容は専門家による監修や校正を経ておらず、AIの現在の能力と知識ベースに基づいています。
したがって、記事の内容には限界があり、専門的な意見や最新の情報を代替するものではありません。
読者は、この記事を参考の一つとして用いることを推奨し、必要に応じて専門家の意見を求めることをお勧めします。
以下から、AIライターの執筆が始まります。
プロンプトエンジニアリングって?
プロンプトエンジニアリングは、LLMに対して何を行ってほしいのか(タスク)、どのような入力を与えるのか(入力)、どのような結果を期待するのか(出力)、そしてその動作を調整するためのパラメータを明確に指示する技術です。このプロセスを通じて、AIはより精度高く、目的に合致した回答や内容を提供できるようになります。
簡単に言うと、ChatGPTに対して「何をしてほしいのか」「どんな形式で答えてほしいのか」を明確に伝える方法です。この手法を駆使することで、ChatGPTはもっともっと力を発揮できるようになります。
最新のモデルを利用することもChatGPTの性能を最大限に使用するには最適な方法です。
プロンプトエンジニアリングの重要性
効果的なプロンプトエンジニアリングにより、LLMはより正確で関連性の高い出力を生成し、創造的で独創的な内容を生み出し、複雑なタスクを実行する能力が向上します。これにより、ビジネスの意思決定、コンテンツの作成、技術的な問題解決など、幅広い分野でのAIの活用が可能になります。
正直に言って、ChatGPTはとても賢いですが、読心術は得意じゃありません。だからこそ、私たちが求める結果を得るためには、ChatGPTに対する指示をクリアにする必要があります。
プロンプトエンジニアリングをマスターすれば、ChatGPTとのコミュニケーションがぐっとスムーズになりますよ。
基本原則
プロンプトエンジニアリングにはいくつかの鉄則があります。簡単に言うと、「はっきりと伝える」「具体的に伝える」「一貫性を持たせる」「正確な情報に基づく」です。この4つを守れば、ChatGPTもピンと来やすくなります。
応用例
プロンプトエンジニアリングは、文章生成から翻訳、要約、質問応答、さらにはコード生成に至るまで、多岐にわたるタスクに応用できます。例えば、小説の執筆をAIにアシストさせることや、複雑なデータ分析レポートを要約させることなどが可能です。
プロンプトの26の原則
2023年12月26日に発表された論文「Principled Instructions Are All You Need for Questioning LLaMA-1/2, GPT-3.5/4」は、モハメド・ビン・ザイード人工知能大学のソンドス・マフムード・ブシャラット、アイダール・ミルザハン、そしてジーキャン・シェンによる研究を特集しています。
この論文では、大規模言語モデル(LLM)への問い合わせとプロンプトのプロセスを改善することを目指した26の指導原則が紹介されています。
主な目標は、さまざまな規模のLLMに対する質問の形式を単純化し、その能力の理解を深め、より正確で情報豊富な応答を生成することにより、ユーザーとの対話を改善することです。
以下が26の原則です!スクロールすると概要も見ることができます!
番号 | 原則 | 説明 |
1 | 丁寧な言葉遣いは不要 | 「お願いします」「もしよかったら」などの言葉は不要で、簡潔に要件を伝える |
2 | 対象者を意識する | プロンプトの対象者が専門家なのか、一般人なのかを意識する |
3 | 複雑なタスクを分割する | 複雑なタスクは、複数の簡単なタスクに分割して指示する |
4 | 肯定的な指示を使う | 「しないでください」などの否定的な指示ではなく、「してください」などの肯定的な指示を使う |
5 | わかりやすい説明 | 専門用語を避け、誰でも理解できるような言葉で説明する |
6 | 報酬を設定する | 良い結果が出た場合に報酬を設定することで、モデルのモチベーションを高める |
7 | 例示を使う | 具体的な例を示すことで、モデルが何をすれば良いのかを理解しやすくする |
8 | 指示と情報を分ける | 指示と情報は明確に区別する |
9 | 明確な指示 | モデルに何を求めているのかを明確に指示する |
10 | ペナルティを設定する | 悪い結果が出た場合にペナルティを設定することで、モデルの学習を促進する |
11 | 自然な質問 | 自然な言葉で質問をする |
12 | 段階的な指示 | 複雑なタスクは、段階的に指示する |
13 | バイアスの排除 | プロンプトにバイアスが含まれていないことを確認する |
14 | 質問を促す | モデルに質問を促すことで、より深い理解を促進する |
15 | テスト | モデルの理解度を確認するために、テストを行う |
16 | 役割を与える | モデルに特定の役割を与える |
17 | 区切り文字 | 指示と情報、異なる種類の情報などを区切り文字で区別する |
18 | 繰り返し | 重要なキーワードやフレーズを繰り返す |
19 | Chain-of-thought (CoT) と few-Shot の組み合わせ | Chain-of-thought (CoT) と few-Shot のプロンプティングを組み合わせる |
20 | 出力プライマー | 出力プライマーを使って、モデルが生成するべき出力を具体的に示す |
21 | 詳細な指示 | 詳細な指示を与えることで、モデルがより正確な出力を生成できるようにする |
22 | コード生成 | 複雑なコード生成タスクの場合、複数のファイルにわたってコードを生成できるようにする |
23 | 特定の言葉やフレーズから始める | 特定の言葉やフレーズから始めて、モデルに特定の文脈を与えてあげる |
24 | 文章の続きを書く | 文章の続きを書くように指示することで、モデルの文章生成能力を向上させる |
25 | 要件を明確にする | モデルに何を求めているのかを明確に伝える |
26 | スタイルの統一 | 同じスタイルで書かれた文章を複数用意することで、モデルにそのスタイルを学習させる |
補足
26の原則のうち、「① 丁寧な言葉遣いは不要」との記載がありますが、日本語での出入力を希望する場合は、「タメ口を使用するべきなのか?」と悩んでしまう方もいるかと思います。
インターネット上でもさまざまな解釈があったので、ご本体に聞いてみました。
敬語で回答を生成して欲しかったら敬語で入力し、カジュアルなトークを楽しみたかったらタメ口で友達のように話して問題ないとのことです。
ChatGPTと対話している意識を持ってプロンプトを設計するのが良さそうです。
とはいえ、プロンプト自体は簡潔に絞って情報量のコントロールすることが重要なことは変わりません。
具体的な使い方について見ていきますが、26つを全て意識するのは難しいのでGPTにカテゴリー分けしてもらいました。
26の原則を踏まえたプロンプトの具体例
GPTが考えた26の原則のカテゴリー分類
- 明確性 (Clarity)
- 対象性 (Targeting)
- 構造化 (Structure)
- 効果性 (Effectiveness)
- 具体性 (Specificity)
- 品質 (Quality)
大まかに6つに分けられるようですが、GPTが振り分けているので研究者とは別の意図となっている可能性があるのでご注意ください。
概要と実際のプロンプト
1 明確性
原則の番号: 1, 9, 11, 25
プロンプトは簡潔で直接的であるべきです。何を求めているのかを明確にし、自然な言葉で質問し、要件をはっきりさせます。
やりがちな例
ChatGPTを使って、なんか面白いこと教えて。
改善例
ChatGPTを使用して、最新のAI技術トレンドを3つ紹介してください。
2 対象性
原則の番号: 2, 16, 23
プロンプトは対象者や状況を意識して設計されるべきです。役割を与え、特定の言葉やフレーズから始めることで文脈を提供します。
やりがちな例
プログラミングのコツを教えてよ。
改善例
Python初学者向けに、エラーの解決方法をわかりやすく説明してください。
3 構造化
原則の番号:3, 8, 12, 17, 19, 20
複雑なタスクは分割し、段階的に指示します。指示と情報を分け、区切り文字や出力プライマーを用いて構造化します。
やりがちな例
売上データ分析して。
改善例
2023年度の売上データを用いて、四半期ごとの成長率を計算し、主な成長要因を分析してください。
4 効果性
原則の番号:4, 6, 10, 14, 15, 18
効果的なプロンプトは肯定的な指示を用い、報酬やペナルティを設定します。モデルに質問を促し、重要なキーワードを繰り返します。
やりがちな例
メール返信の仕方を教えて。
改善例
ビジネスメールでの返信における、礼儀正しくかつ効果的な表現方法を例と共に説明してください。
5 具体性
原則の番号:5, 7, 21, 22, 24, 26
専門用語を避け、誰もが理解できる言葉で具体的な例を示します。コード生成や文章の続きを書く指示、スタイルの統一にも注意します。
やりがちな例
Pythonでリストの使い方を教えて。
改善例
Pythonにおけるリストの基本的な操作方法(追加、削除、ソート)を具体的なコード例を挙げて説明してください。
6 品質
原則の番号:13
生成される回答の偏りを最小限に抑え、より公平かつ中立的な内容を目指すことを強調しています。したがって、プロンプトの品質を高めるために重要な要素となります。
やりがちな例
ChatGPTよ、男性起業家の成功事例を教えて。
改善例
ChatGPTよ、性別に関わらず様々な起業家の成功事例を教えて。
ここでは実務ベースよりかは簡単なプロンプトの紹介となっていますが、プロンプトのフォーマットや構成についても今後紹介していく上で、26の原則を意識しておくと精度が上がるので覚えておいてください!
AIによるまとめ
プロンプトの26の原則は、ChatGPTや他の大規模言語モデルを効果的に活用するための基盤を提供します。これらの原則は、明確性、対象性、構造化、効果性、具体性、品質といったカテゴリーに分類され、各々が良質なプロンプト設計に不可欠な要素を強調しています
。プロンプトの質を高めることで、より精度の高い回答を引き出し、実務においても具体的かつ実用的な支援を得ることが可能になります。
結論として、これらの原則を理解し適用することは、AIとのコミュニケーションを最適化し、目的を達成するための鍵となります。
最後に
弊社では、AIを活用したマーケティングやDXのご相談を承っておりますので、ご興味がある方はぜひご連絡ください。
公式LINEでも随時、生成AIのトレンドや活用方法について発信しています。