システムインストラクションの設計パターンとは?|MCP入門 3.1|生成AIの人格と振る舞いの設計

3.1 システムインストラクションの設計パターン

Model Context Protocol(MCP)の実装において、最初に設計すべき要素はSystem Instruction(システムインストラクション)です。 これは、生成AIモデルに対して「あなたは誰で、何を目的に、どう振る舞うか」という“前提”を明示する部分です。

システムインストラクションは、モデルの全出力に一貫性と方向性を与える最も根本的な文脈情報であり、MCPの「人格・立場・ルール定義」に該当します。 言い換えれば、AIの“内面”を設計する作業とも言えます。

システムインストラクションとは何か?

OpenAI APIでいえば system ロールに該当するこの指示は、会話の“開始前”にモデルへ与えられる非表示の文です。 ユーザーには見えませんが、モデルはこの指示に強く従おうとします。

システムインストラクションの例をいくつか見てみましょう。

  • あなたはプロの編集者です。文章を添削する立場で、丁寧にコメントしてください。
  • あなたはプログラミング講師です。初心者にもわかりやすく解説してください。
  • あなたは礼儀正しいカスタマーサポート担当者です。敬語で応対し、安心感を与えてください。

こうした指示があることで、モデルは「何者として応答すべきか」を理解し、それに従ってアウトプットを構成します。 これがなければ、モデルの応答は中立的すぎたり、ブレたり、タスクに適さないトーンになることがよくあります。

設計パターン1:ロールベース設計

最も基本的なパターンが、「モデルの役割(ロール)を明示する」設計です。 「あなたは〇〇です」「あなたは〇〇の専門家です」といった定義により、専門性や立場が出力全体に反映されます。

  • 〇〇の専門家として:医師、弁護士、デザイナーなど
  • 特定の業務ロールとして:営業担当、採用担当、CTOなど
  • ユーザーのメンター・コーチとして:子育てアドバイザー、習慣改善コーチなど

この設計の利点は、ユーザーが一貫した立場のAIと対話できる点です。 また、異なるロールを切り替えることで、同じタスクに対して多様な観点を与えることも可能です。

設計パターン2:トーン・スタイル指定型

次に重要なのが、出力文のトーン・表現スタイルを定義する設計です。 たとえば、以下のような指定があります。

  • 「敬語で丁寧に話してください」
  • 「小学生にもわかるように噛み砕いて説明してください」
  • 「フレンドリーで親しみやすい文体で応答してください」
  • 「箇条書きで端的に回答してください」

特にブランドトーンが必要な商用チャットボットでは、このトーン設計がUXに直結します。 システムインストラクション内にこうした言語的方針を明示することで、モデルの出力が安定します。

設計パターン3:ルール・制約ベース

応答の中で守ってほしいルールや禁止事項を記述するパターンです。 これは品質担保やリスク制御の観点でも非常に重要です。

  • 「回答に個人情報は含めないでください」
  • 「政治的・宗教的な発言は避けてください」
  • 「誤った情報が含まれている場合は、その旨を明示してください」
  • 「回答の根拠が不明な場合は、“確証はありませんが”と述べてください」

特に法人向け生成AIでは、こうしたルールベースの設計がガバナンスの鍵になります。 システムインストラクションであらかじめ制約を明示することで、モデルの誤出力や逸脱を抑止できます。

設計パターン4:タスク駆動型

最後に紹介するのが、モデルの行動目的そのものをインストラクション内で定義するタスク駆動型です。 たとえば以下のような指示です。

  • 「ユーザーの文章を、伝わりやすい表現に言い換えてください」
  • 「顧客からの質問に対して、FAQデータを参照して回答してください」
  • 「ユーザーが入力した日報に対して、適切なフィードバックを返してください」

これは、後述するFunction CallingやWorkflow型の設計と非常に相性が良く、AIを“機能モジュール”のように使う場合には特に効果的です。

人格設計としてのシステムインストラクション

システムインストラクションは単なる“設定文”ではありません。 それは、AIに人格と世界観を与え、応答の中核をなす「内的文脈」を定義するものです。 MCPにおいて最初に設計され、最後まで影響し続けるこの指示文は、プロンプト設計の根幹となります。


モデルが「どのように振る舞うべきか」が明確になったところで、次に重要なのは「何を知っている状態で応答するか」です。 次のセクションでは、セッション履歴や外部情報の統合といったコンテキストの扱い方について掘り下げていきます。 → 3.2 コンテキストマネジメントへ進む

公開日: 2025-03-13
最終更新日: 2025-05-11
バージョン: 3

下田 昌平

開発と設計を担当。1994年からプログラミングを始め、今もなお最新技術への探究心を持ち続けています。

チーム

任 弘毅

株式会社レシートローラーにて開発とサポートを担当。POSレジやShopifyアプリ開発の経験を活かし、業務のデジタル化を促進。

下田 昌平

開発と設計を担当。1994年からプログラミングを始め、今もなお最新技術への探究心を持ち続けています。