mcpField
P
prompt-engineering

prompt-engineering

github.com/oakossエージェントワークフロー20124 回インストール11 週間前に更新
リポジトリ

prompt-engineering について

prompt-engineeringは、LLMや自律型エージェント向けのプロンプトを設計・改善するスキルです。推論パターン、再利用可能なテンプレート、評価ワークフロー、ツール利用、マルチモーダルなプロンプトを扱います。

主な機能

  1. 01タスクに応じた推論パターン
  2. 02再利用可能なプロンプトテンプレート
  3. 03プロンプトのテストと最適化
  4. 04エージェントループとツール利用の指示
  5. 05マルチモーダルなプロンプト設計

活用シーン

  1. 01構造化推論向けプロンプトの設計
  2. 02ツールを使うエージェントワークフローの構築
  3. 03指標によるプロンプト案の比較
  4. 04画像とテキストを扱うタスク向けプロンプト作成

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/oakoss/agent-skills --skill prompt-engineering

インストール後、Claude Code で/prompt-engineeringを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
chain-of-thought.md
extended-thinking.md
few-shot-learning.md
multimodal-prompting.md
prompt-optimization.md
prompt-templates.md
react-patterns.md
reasoning-model-optimization.md
structured-thinking.md
system-prompts.md
tree-of-thoughts.md

詳細

プロンプトエンジニアリング

LLM と自律型エージェントのための高度なプロンプト設計です。推論パターン、テンプレートシステム、最適化ワークフロー、エージェントオーケストレーション、拡張思考、ツール使用を促すプロンプトを扱います。

使用する場面:構造化された推論を必要とするプロンプトの設計、エージェントのループ構築、LLM の出力品質の最適化、再利用可能なプロンプトテンプレートの作成、複雑なタスクに向けた拡張思考の設定、または画像とテキストを使ったマルチモーダルプロンプトの設計。

使用しない場面:単純な事実確認、直接的な情報検索、または自由度の高い生成が有効なクリエイティブライティング。

主な原則

  1. 暗黙より明示 -- 最新のモデル(Claude 4.x、GPT-4.1)は指示に文字どおり従います。モデルが意図を推測することに頼るのではなく、望ましい出力、形式、動作を具体的に指定してください。
  2. 指示より目的 -- 推論モデル(OpenAI o-series、拡張思考を備えた Claude)には、手順を細かく指定するのではなく、目標を伝えてください。これらのモデルは自ら計画を立てます。
  3. 構造で意図を伝える -- XML タグ、明確な区切り、統一された書式を使って、プロンプトの構造を伝えてください。構造化プロンプトで学習したモデルは、プレーンテキストよりもその構造を確実に解析できます。
  4. 優れた例ひとつは、多数のルールに勝る -- 書式が統一された少数例の提示は、冗長な指示よりも効果的にモデルの動作を方向付けます。
  5. フィードバックループは組み込まれている -- 最終回答を確定する前に、モデル自身に出力の検証、批評、または採点を求めるプロンプトを設計してください。
  6. トークンの節約は重要 -- トークンが増えるたびに、遅延とコストが増加します。コンテキストを圧縮し、冗長な部分を削り、重要な情報を先に伝えてください。

モデルごとの考慮事項

Claude 4.x models は、指示に高い精度で従います。プロンプトを文字どおりに解釈し、求められたことを過不足なく実行します。プロンプトの各セクションを構成するには、XML タグ(<rules>、<context>、<output_format>)を使用してください。指示は避けるべきことではなく、実行すべきことを説明する肯定的な形で記述してください。指示の背景にある文脈や動機を示すことで、Claude がその内容を一般化しやすくなります。拡張思考とインターリーブ思考は、ネイティブの推論機能を提供します。

OpenAI o-series models(o3、o4-mini)は、応答の前に内部推論トークンを使用します。システムメッセージではなく、開発者メッセージを使用してください。関数の詳細な説明は、インターフェース契約として記述してください。これらのモデルは自ら推論するため、明示的な推論プロンプトは追加しないでください。計画を促すプロンプトを追加すると、パフォーマンスが低下することがあります。複数ターンの会話では、保持された推論項目を返してください。

GPT-4.1 と標準モデルでは、明示的な段階的指示、少数例の提示、構造化された出力スキーマが有効です。これらのモデルにはネイティブの推論ループがないため、CoT プロンプティングや構造化思考プロトコルによって、測定可能な効果が得られます。

マルチモーダルモデル(GPT-4o、ビジョン機能を備えた Claude、Gemini)は、テキストとともに画像を受け取れます。それぞれの画像が何を表すかを説明し、明確な動作動詞を使い、画像を関連領域に絞って切り抜いてください。複数の画像には明示的にラベルを付け、それらの関係を指定してください。

クイックリファレンス

パターンAPI/手法ポイント
ゼロショット CoT"Let's think step by step" のトリガー例を使わずに推論を引き出します
フューショット CoT明示的な推論チェーンの例多くのルールより、優れた例を1つ示すほうが効果的です
セルフコンシステンシー複数の経路+多数決複雑なタスクで精度が向上します
思考の木(Tree-of-Thoughts)3つ以上の戦略を生成し、最も弱いものを除外します枝刈りを伴う並列探索ですが、コストが高くなります
ReAct ループ思考・行動・観察のサイクルエージェントが推論と行動を同時に行います
システムプロンプト役割+専門知識+ガイドライン+形式すべての LLM の動作の基盤となります
プロンプトテンプレート変数スロットを使ったモジュール式の構成再利用でき、検証可能で、キャッシュできます
A/B テストプロンプトのバリエーションを統計的に比較変数を分離し、有意性を測定します
拡張思考予算を制御した深い推論(Claude)応答する前にモデルに考えさせます
インターリーブ思考ツール呼び出しの合間に考えます(Claude 4)各ツールの結果を受け取った後に推論します
Think ツール構造化された推論空間を提供する no-op ツールエージェントがターンの途中で推論する場所を提供します
推論モデルo3/o4-mini 向けの目標ベースのプロンプトモデル自身に推論を計画させます
構造化思考理解・分析・実行のプロトコル行動する前の検証を徹底します
XML による構造化プロンプトの各セクションを区切るタグモデルは構造化されたプロンプトを確実に解析します
マルチモーダルプロンプトビジョンモデル向けのテキスト+画像コンテキスト空間コンテキストと明確な動作動詞を提供します
信頼度スコアリングモデルが主張ごとに確信度を自己申告します出力の信頼性を定量化します
トークン最適化コンテキストを圧縮し、不要な語句を削除しますレイテンシとコストを削減します

よくある間違い

間違い正しいパターン
1つのプロンプトに指示を詰め込みすぎる優先順位を明確にした階層的なルールを使用する
推論モデルに厳密な手順を強制する目標ベースのプロンプトを使用する。推論モデルはネイティブに計画します
推論モデルの最大出力トークン数を少なく設定する内部の思考の連鎖に十分なトークンを割り当てる
複雑なタスクに固定の例を使用する意味的類似性に基づいて例を動的に選択する
few-shot の例でフォーマットが一貫していないすべての例で同一の入出力構造に従う
構造化されていない LLM 出力を手動で解析するJSON モードまたは構造化出力スキーマを使用する
トークン予算の配分を無視するシステムプロンプト、例、入力、応答用のトークンを確保する
最適化の前にベースライン測定を行わないまず指標を設定し、その後、一度に1つの変数を変更する
推論モデルで CoT プロンプトを使用する不要です。これらのモデルは明示的なトリガーなしでネイティブに推論します
してほしいことではなく、してほしくないことをモデルに伝える指示を肯定的に表現し、望ましい動作を説明する
思考ブロックをユーザーテキストとして送り返す(Claude)思考ブロックは変更せず、アシスタントメッセージ内でのみ渡す
推論モデルに「もっと計画する」よう過剰に促す追加の計画プロンプトは、推論モデルのパフォーマンスを低下させる場合があります

プロンプトエンジニアリングのワークフロー

  1. 目標を定義する -- プロンプトで達成することと、成功の測定方法を示します
  2. 適切なパターンを選ぶ -- 複雑さに基づいて、タスクに CoT、ReAct、ToT、またはシンプルなプロンプトを適合させます
  3. モデルのティアを選択する -- タスクの難易度に応じて、軽量、標準、または推論モデルに振り分けます
  4. ベースラインとなるプロンプトを書く -- シンプルに始めます。複雑なケースでは、XML タグを使ったシステムプロンプトの構造を使用します
  5. 例を追加する -- タスクに必要な場合は、フォーマットを統一した few-shot の例を1~3個含めます
  6. テストして測定する -- 代表的な入力でベースライン指標(精度、レイテンシ、トークン使用量)を設定します
  7. 失敗を分析する -- エラーを分類(フォーマット、事実、論理、不完全)し、影響が最も大きいものに対処します
  8. 1つの変数を反復する -- パフォーマンスを向上させる要素を特定できるよう、一度に1つの要素だけを変更します
  9. バージョン管理してデプロイする -- ロールバックできるよう、パフォーマンスデータとともにプロンプトのバージョンを追跡します

委任

  • プロンプトのバリエーションを検討してモデルの応答を比較する:Explore エージェントを使用して、さまざまな入力でプロンプト戦略をテストします
  • ツールを使用する複数ステップのエージェント型ワークフローを構築する:Task エージェントを使用して、ReAct ループと自律型チェーンを実装し、検証します
  • 複雑なシステム向けに階層的なプロンプトアーキテクチャを設計する:Plan エージェントを使用して、検証ループを備えたプロンプトシステムを構成します

expert-instruction スキルが利用可能な場合は、システムプロンプトの設計とエージェントのペルソナ作成を委任してください。

参考資料

  • Chain-of-Thought -- 段階的な推論、自己整合性、簡単な問題から難しい問題への分解
  • Few-Shot Learning -- 例の選択戦略、トークン数を考慮した切り詰め、エッジケース
  • Prompt Templates -- テンプレートのアーキテクチャ、モジュール式の構成、検証、キャッシュ
  • Prompt Optimization -- A/B テスト、失敗分析、メトリクス、バージョン管理
  • System Prompts -- 役割の定義、制約の指定、動的な適応
  • Reasoning Model Optimization -- o3/o4-mini 向けの目的ベースのプロンプト、拡張思考の設定
  • Tree-of-Thoughts -- 並列分岐の探索、評価、統合
  • ReAct Patterns -- 思考・行動・観察のループ、ツールの検出、エラーからの回復
  • Structured Thinking -- 敵対的批評プロトコル、確信度のスコアリング、メタデータのタグ付け
  • Extended Thinking and Tool Use -- 予算の設定、思考の交互実行、think ツールのパターン
  • Multimodal Prompting -- ビジョンモデルの手法、画像コンテキスト、モダリティ間のアラインメント

コメント