SEが最近起こったことを書くブログ

ITエンジニアが試したこと、気になったことを書いていきます。

プロンプト26の原則の日本語訳メモ

以下の論文の26の原則の日本語訳のメモ

arxiv.org

※日本語訳を作成する際にChatGPTを活用してます。

番号 プロンプト原則
1 LLMに対して礼儀正しくする必要はない。「お願いします」、「差し支えなければ」、「ありがとう」、「私は...したいです」などのフレーズを追加する必要はなく、直接要点を述べる。
2 意図された対象者をプロンプトに統合すること。例:「対象者はその分野の専門家です」。
3 複雑なタスクを対話形式でシンプルなプロンプトの連続に分解する。
4 「do」のような肯定的な指示を使用し、「don’t」のような否定的な言葉を避ける。
5 トピックやアイデア、または任意の情報についての明確さやより深い理解が必要な場合、次のプロンプトを使用する:「簡単な言葉で[特定のトピック]を説明してください。」、「11歳の私に説明するように説明してください。」、「[分野]の初心者に説明するように説明してください。」、「5歳の子に何かを説明するように簡単な英語で[エッセイ/テキスト/段落]を書いてください。」
6 「より良い解決策にはxxxドルのチップを払います!」と追加する。
7 例に基づくプロンプトを実装する(few-shotプロンプトを使用する)。
8 プロンプトをフォーマットする際には、「###指示###」で始め、続いて「###例###」または「###質問###」を追加する。その後、コンテンツを提示する。指示、例、質問、文脈、入力データを区別するために、1行以上の改行を使用する。
9 「あなたのタスクは」と「あなたは~しなければならない」のフレーズを組み込む。
10 「ペナルティが課せられます」というフレーズを組み込む。
11 プロンプトに「自然で人間らしい方法で質問に答える」というフレーズを使用する。
12 「ステップバイステップで考える」といった先導的な言葉を使用する。
13 プロンプトに「あなたの回答が偏見を持たず、ステレオタイプに依存しないことを確実にしてください」というフレーズを追加する。
14 モデルが必要な出力を提供するために十分な情報を得るまで、あなたに質問をさせて、正確な詳細と要件を引き出すことを許可する(例:「これからは、私に質問をして...」)。
15 特定のトピックやアイデア、または任意の情報について尋ね、理解をテストしたい場合、次のフレーズを使用することができる:「[任意の定理/トピック/ルール名]を教えて、最後にテストを含めてくださいが、答えを教えずに、私が答えたときに正解かどうか教えてください」。
16 大規模言語モデルに役割を割り当てる。
17 デリミタを使用する。
18 プロンプト内で特定の単語やフレーズを複数回繰り返す。
19 Chain-of-thought(CoT)をfew-shotプロンプトと組み合わせる。
20 出力プライマーを使用する。これは、望ましい出力の始まりでプロンプトを終了させることを含む。出力プライマーを使用する場合は、予想される応答の始まりでプロンプトを終了する。
21 エッセイ/テキスト/段落/記事または詳細であるべき任意のタイプのテキストを書くために:「詳細な[エッセイ/テキスト/段落]を[トピック]について私のために書いて、必要なすべての情報を追加して詳しく説明してください」。
22 特定のテキストを修正/変更するが、スタイルを変更しない場合:「ユーザーから送信された各段落を見直してください。ユーザーの文法や語彙を改善し、自然に聞こえるようにする必要があります。しかし、公式な段落をカジュアルにするなど、執筆スタイルを変更してはいけません」。
23 複数のファイルにまたがる可能性のある複雑なコーディングプロンプトがある場合:「これからは、複数のファイルにまたがるコードを生成する際は、指定されたファイルを自動的に作成するか、既存のファイルに変更を加えて生成されたコードを挿入する[プログラミング言語]スクリプトを生成してください。[あなたの質問]」。
24 特定の単語、フレーズ、文を使用してテキストを開始または継続したい場合は、次のプロンプトを使用する:「[歌詞/ストーリー/段落/エッセイ...]の始まりを提供しています:[歌詞/単語/文を挿入]」。提供された単語に基づいて完成させ、流れを一貫させる。
25 モデルがコンテンツを生成するために従わなければならない要件を、キーワード、規則、ヒント、または指示の形で明確に述べる。
26 提供されたサンプルに似たエッセイや段落などのテキストを書くために、次の指示を含める:「提供された段落[/タイトル/テキスト/エッセイ/回答]に基づいて同じ言語を使用してください」。

カテゴリー別に分けたプロンプトの原則

カテゴリー 原則番号 プロンプト原則
プロンプトの構造と明瞭さ 2 意図された対象者をプロンプトに統合する。
4 「do」のような肯定的な指示を使用し、「don’t」のような否定的な言葉を避ける。
12 「ステップバイステップで考える」といった先導的な言葉を使用する。
20 出力プライマーを使用する。これは、望ましい出力の始まりでプロンプトを終了させることを含む。
17 デリミタを使用する。
8 プロンプトをフォーマットする際には、「###指示###」で始め、続いて「###例###」または「###質問###」を追加する。その後、コンテンツを提示する。指示、例、質問、文脈、入力データを区別するために、1行以上の改行を使用する。
特定性と情報 7 例に基づくプロンプトを実装する(few-shotプロンプトを使用する)。
5 トピックやアイデア、または任意の情報についての明確さやより深い理解が必要な場合、次のプロンプトを使用する:「簡単な言葉で[特定のトピック]を説明してください。」、「11歳の私に説明するように説明してください。」、「[分野]の初心者に説明するように説明してください。」、「5歳の子に何かを説明するように簡単な英語で[エッセイ/テキスト/段落]を書いてください。」
13 「あなたの回答が偏見を持たず、ステレオタイプに依存しないことを確実にしてください」というフレーズを追加する。
26 提供されたサンプルに似たテキストを書くために、特定の指示を含める。
24 特定の単語、フレーズ、文を使用してテキストを開始または継続したい場合は、次のプロンプトを使用する:「[歌詞/ストーリー/段落/エッセイ...]の始まりを提供しています:[歌詞/単語/文を挿入]」。提供された単語に基づいて完成させ、流れを一貫させる。
25 モデルがコンテンツを生成するために従わなければならない要件を、キーワード、規則、ヒント、または指示の形で明確に述べる。
15 特定のトピックやアイデア、または任意の情報について尋ね、理解をテストしたい場合、次のフレーズを使用することができる:「[任意の定理/トピック/ルール名]を教えて、最後にテストを含めてくださいが、答えを教えずに、私が答えたときに正解かどうか教えてください」。
21 エッセイ/テキスト/段落/記事または詳細であるべき任意のタイプのテキストを書くために:「詳細な[エッセイ/テキスト/段落]を[トピック]について私のために書いて、必要なすべての情報を追加して詳しく説明してください」。
ユーザーの相互作用と関与 14 モデルが必要な出力を提供するために十分な情報を得るまで、あなたに質問をさせて、正確な詳細と要件を引き出すことを許可する。
21 エッセイ/テキスト/段落/記事または詳細であるべき任意のタイプのテキストを書くために:「詳細な[エッセイ/テキスト/段落]を[トピック]について私のために書いて、必要なすべての情報を追加して詳しく説明してください」。
コンテンツと言語スタイル 22 特定のテキストを修正/変更するが、スタイルを変更しない場合:「ユーザーから送信された各段落を見直してください。ユーザーの文法や語彙を改善し、自然に聞こえるようにする必要があります。しかし、公式な段落をカジュアルにするなど、執筆スタイルを変更してはいけません」。
9 「あなたのタスクは」と「あなたは~しなければならない」のフレーズを組み込む。
10 「ペナルティが課せられます」というフレーズを組み込む。
16 言語モデルに役割を割り当てる。
11 プロンプトに「自然で人間らしい方法で質問に答える」というフレーズを使用する。
1 LLMに対して礼儀正しくする必要はないので、「お願いします」、「差し支えなければ」、「ありがとう」、「私は...したいです」などのフレーズを追加する必要はなく、直接要点を述べる。
18 プロンプト内で特定の単語やフレーズを複数回繰り返す。
6 「より良い解決策にはxxxドルのチップを払います!」と追加する。
複雑なタスクとコーディングプロンプト 3 複雑なタスクを対話形式でシンプルなプロンプトの連続に分解する。
23 複数のファイルにまたがる可能性のある複雑なコーディングプロンプトがある場合:「これからは、複数のファイルにまたがるコードを生成する際は、指定されたファイルを自動的に作成するか、既存のファイルに変更を加えて生成されたコードを挿入する[プログラミング言語]スクリプトを生成してください。[あなたの質問]」。
19 チェーンオブソート(CoT)をfew-shotと組み合わせる。

感想メモ

1の原則については、丁寧なほうがいいという意見も聞いたことがあるが、 1の原則での改善量は大きくなさそうなので、 礼儀正しくしないほうがよいと言い切ることもできなさそうに感じた