ご注意

ここに紹介されているシステムプロンプトで、現在の推論モデルの思考能力が向上するわけではないのでご留意ください。

はじめに

大規模言語モデル(LLM)の推論能力を向上させる上で、システムプロンプトはLLMの「思考」プロセスを形成し、特定のタスクへのアプローチに影響を与える「交戦規則」を定義する進化する役割を担っています。強化学習(RL)は、システムプロンプトによって引き出される推論戦略を、反復的なフィードバックを通じて学習・洗練させる強力なパラダイムを提供します。RLとシステムプロンプトの相乗効果により、推論プロセスの動的な学習と適応が可能になります。システムプロンプトは、RLアルゴリズムが最適化を目指す推論タスクの舞台を設定し、RLはその舞台でのパフォーマンスを微調整します。

LLM推論のためのシステムプロンプトを設計する際には、特定のタスクの性質に応じて、最も適したRLアルゴリズムを選択し、プロンプトを調整することが重要です。以下に、ソースに基づいたタスクの種類ごとのRLアルゴリズムとシステムプロンプトの考慮事項を図表にまとめ、その後、各タスクに対するシステムプロンプトの例を作成します。

1. タスクの種類と適したRLアルゴリズム、システムプロンプトの連携(図表)

ソースでは、様々なRLアルゴリズムがLLM推論の強化に適用されており、それぞれに利点と欠点、および適したタスクがあります。特に、タスクの性質、データの利用可能性、計算予算、安定性、およびきめ細かい制御の必要性がアルゴリズム選択の基準となります。システムプロンプトは、これらのアルゴリズムが効果的に学習するための基盤を提供するために不可欠です。

以下の表は、ソースで言及されている主要な推論タスクと、それらに適したRLアルゴリズム、およびシステムプロンプトとの連携における考慮事項をまとめたものです。

推論タスクの種類主なRLアルゴリズム選択の理由 / RLとの相乗効果システムプロンプトの考慮事項著名な例/論文 (スニペットID)
論理的および記号的推論(論理パズル、定理証明)REINFORCE++, GRPO, DPO (CuDIP)- REINFORCE++/GRPO: 段階的思考やフォーマットへの準拠に報酬を与えやすいルールベースRLに適する。汎化に役立つ。- DPO: 中間ステップ(証明タクティクス)に対する嗜好学習に利用可能。段階的な演繹と構造化を奨励: タグなどを使用させ、思考プロセスを可視化・検証可能にする。形式システムの操作をガイド: 定理証明の場合、形式システムとの対話や証明状態の表現方法を指示。検証可能な出力フォーマット: 報酬関数が中間または最終ステップを容易に評価できるように設計。Logic-RL, DeepSeek-R1, CuDIP
数学的問題解決PPO (ReFT), GRPO, DPO (Step-DPO), VinePPO, T-SPMO, OREO, GFlowNets+PRM- PPO/GRPO: 多様なパスからの学習、相対比較に利用。- Step-DPO/VinePPO/T-SPMO/OREO/GFlowNets: 中間ステップの価値/嗜好、きめ細かいクレジット割り当てが重要。疎な報酬問題を緩和。- GRPO/T-SPMO/S-GRPO: リソース制約のある小規模LLMに適する。CoTを奨励: 「段階的に考える」などのフレーズで推論ステップの出力を促す。出力フォーマット指定: 回答抽出のための特定フォーマット(例:\boxed{})を指示。問題の分解をガイド: 複雑な問題のステップワイズな解決を促す.ReFT, Step-DPO, VinePPO, OREO, GFlowNets, T-SPMO/S-GRPO
コード生成とソフトウェアエンジニアリングGRPO (DeepSeek-R1, SWE-RL), RRL- GRPO: コンパイラ/テスト結果、類似性スコアなど検証可能な報酬に適する。- RRL: 複雑なソリューション空間での探索効率向上に有効。タスクと制約の明確化: 望ましい出力フォーマット(関数シグネチャなど)を含む、問題の正確な仕様を提供。思考プロセスの奨励: コードと共にコメントや説明の生成を促す。DeepSeek-R1, SWE-RL, RRL
複雑な質問応答と多段階ツール使用SWiRL, KG-A2C- SWiRL: ツール呼び出しを含む多段階軌跡の最適化に適する。- KG-A2C: 構造化知識に基づく推論と意思決定改善に有用。ツール使用プロトコルの定義: いつ、どのようにツール(検索、計算機など)を使用するかを指示。ツール出力の統合方法: ツール結果を推論連鎖に組み込む方法をガイド。マルチホップ分解: 質問をサブ質問に分解することを奨励.SWiRL, KG-A2C
創造的および長文テキスト生成RLHF/RLAIF, Kimi k1.5戦略- RLHF/RLAIF: 主観的な質(創造性、一貫性、スタイル)に対する人間の嗜好を捉え、アライメントするのに適する.- Kimi k1.5: 長いコンテキストでの計画、反省、修正など、長文生成に重要な特性をRLでスケーリング。創造的な制約設定: ジャンル、スタイル、キャラクター、プロットなどのガイドラインを提供。メタ思考の奨励: 構造の計画やドラフトへの反省を促す。望ましい出力特性: 一貫性や魅力といった質を定義.RLHF/RLAIF, Kimi k1.5

2. タスクの種類ごとのシステムプロンプトの例

システムプロンプトは、LLMが推論タスクに取り組む際の「思考スタイル」に影響を与え、RLアルゴリズムが学習できるような形で推論プロセスを構造化します。以下に、ソースで説明されている原則に基づき、各タスクの種類に対するシステムプロンプトの例をいくつか作成します。これらの具体的なプロンプトの文言は、ソースにある原則(CoTの奨励、構造化フォーマット、ツールの指示など)を応用して私が作成したものであり、ソースに直接記述されているものではありません。

論理的および記号的推論(例:論理パズル)

  • 原則: 段階的な演繹、構造化された思考プロセス、タグの使用、検証可能なフォーマットを奨励する。
  • システムプロンプト例:
あなたは高度な論理推論エンジンです。以下の論理パズルを解いてください。<think>タグ内に思考プロセスを記述し、最終的な結論を<answer>タグ内に記述してください。思考プロセスでは、既知の事実とそれから論理的に導出されるステップを明確に示してください。ショートカットや推測は行わず、厳密な論理のみに基づいてください。
 
パズル:A、B、Cの3人がいます。以下の声明があります。
1. Aは真実を話します。
2. Bは、Aが嘘つきだと言います。
3. Cは、Bが真実を話すと言います。
この中で、正直者は誰ですか?
 
<think>

Rationale: このプロンプトは、段階的な思考 (タグ) と構造化された出力フォーマット (タグ) を明確に要求しており、Logic-RLなどで使用されるフォーマット報酬 と連携可能です。また、論理パズルというタスクの性質に合わせて、厳密な論理に基づく推論を促しています。

数学的問題解決

  • 原則: CoTを奨励(「段階的に考える」)、出力フォーマット(\boxed{})を指定、問題の分解をガイドする。中間ステップの評価に役立つ出力を促す。
  • システムプロンプト例:
あなたは数学の問題解決に長けたAIです。以下の問題を解くにあたり、段階的に思考プロセスを詳細に記述してください。各ステップでは、使用した公式、推論、計算過程を明確に示してください。思考プロセスを完了したら、最終的な答えを\boxed{}で囲んで示してください。
 
問題:ある商品の価格は最初100ドルでした。価格が20%値上がりし、その後15%値下がりしました。最終的な商品の価格はいくらですか?
 
思考プロセス:

Rationale: このプロンプトは「段階的に思考プロセスを詳細に記述」することを明確に指示しており、CoTを強く奨励しています。また、最終的な答えを特定のフォーマット (\boxed{}) で囲むよう指定することで、自動評価や回答抽出を容易にしています。これはStep-DPO やVinePPO のような、中間ステップを評価するRLアルゴリズムと連携しやすい構造です。

コード生成とソフトウェアエンジニアリング

  • 原則: タスク、制約、出力フォーマットの明確化、問題の説明、コメント/説明の奨励。
  • システムプロンプト例:
あなたはPythonコードを生成する熟練したプログラマーAIです。以下の問題説明に基づいて、要求される機能を持つPython関数を生成してください。コードには適切なコメントを含め、関数の目的、引数、戻り値について説明してください。思考プロセスや設計の意図があれば、コードの前に記述してください。
 
問題:整数リストを引数として受け取り、そのリスト内の偶数の合計を計算して返す関数 `sum_even_numbers` を記述してください。
 
思考/設計プロセス:

Rationale: このプロンプトは、生成すべきコードのタスク、言語、および仕様(関数名、目的)を明確に定義しています。また、コードにコメントを含めることや、コードの前に思考プロセスや設計の意図を記述することを奨励しており、これはSWE-RL のような、コードの品質や設計も考慮する可能性のあるRL設定で有用なフィードバックとなり得ます。

複雑な質問応答と多段階ツール使用

  • 原則: 利用可能なツールの指示、ツール使用のタイミングと方法、ツール出力の統合方法、マルチホップ分解の奨励。
  • システムプロンプト例:
あなたは知識検索と計算ツールを使用できるQAエージェントです。以下の質問に回答するために、必要に応じてツールを使用し、その過程を明確に示してください。利用可能なツールは以下の通りです:
- Search(query): インターネット検索を実行します。
- Calculator(expression): 数式を評価します。
 
質問に回答する際は、段階的な思考プロセスを示し、ツールを使用した場合はそのツール呼び出しと結果を記述し、それが推論にどう組み込まれたかを説明してください。最終的な回答を簡潔にまとめてください。
 
質問:カナダの現在の首相の配偶者の名前と、その配偶者の生まれた年は何年ですか?回答には、出生年とその情報源(ツール)を含めてください。
 
思考プロセス:

Rationale: このプロンプトは、LLMが利用できるツールの種類と使い方を明確に説明しています。また、質問の回答プロセスを段階的に示しツール呼び出しとその結果を明示的に含めるよう指示しており、これはSWiRL のような、ツール使用を含む軌跡を最適化するRLアルゴリズムの学習環境を構築する上で重要です。質問をサブ質問(首相の名前 配偶者の名前 出生年)に分解するプロセスを促す設計でもあります。

創造的および長文テキスト生成

  • 原則: ジャンル、スタイル、構造の設定、メタ思考(計画、反省)の奨励、望ましい出力特性の定義.
  • システムプロンプト例:
あなたは才能ある物語作家AIです。以下のプロット概要と制約に基づき、短いファンタジー物語を作成してください。物語は一貫性があり、魅力的なスタイルで書かれ、指定された要素をすべて含んでいる必要があります。執筆を開始する前に、物語の構成について簡単に計画を記述してください。執筆後、物語を一読し、改善点があれば修正プロセスを記述してください。
 
プロット概要:主人公(若い魔法使い)が失われた古代の遺物を探しに旅に出る。途中、信頼できる仲間と出会い、強力な敵対者に遭遇する。
制約:物語は500〜800ワードで、必ず魔法の森と隠された滝の場所を含めること。
 
計画:

Rationale: このプロンプトは、物語のジャンル、プロット概要、長さの制約など、創造的な制約を設定しています。また、執筆前の計画と執筆後の反省・修正を促しており、「メタ思考」や反復的な洗練をRLで学習させる設定(Kimi k1.5 や自己修正)と連携可能です。これらの要素は、報酬がしばしば主観的な創造的タスクにおいて、高レベルの構造とスタイルをガイドするために重要です。

これらの例は、システムプロンプトが単なるタスク指示ではなく、LLMの内部的な推論や生成のプロセスを外部化し、構造化することで、RLアルゴリズムが具体的な行動(トークン生成、ツール呼び出し、思考ステップなど)に対して報酬を受け取り、学習できるように設計されるべきであることを示唆しています。プロンプトエンジニアリングとRLアルゴリズムの選択は連携して設計されるべきであり、これはより全体的な設計プロセスを必要とします。

今後の研究では、より洗練された報酬メカニズムや、LLMの認知能力に対するRLの根本的な影響の深い理解が進むことが期待されています。

関連リンク

Geminiの推論部へのシステムプロンプト設計

強化学習における「知能差」の要因:試行錯誤の量と質