メインコンテンツまでスキップ

システム、ユーザー、アシスタントの役割

初級

すべてのAIの会話はメッセージから構成され、各メッセージには**役割(role)**があります。3つの役割を理解すれば、モデルをどう操縦するか——そしてなぜ一部の指示は定着し、他は定着しないのか——がわかります。

3つの役割

  • システム(System) — 会話全体のための最上位のセットアップ。モデルが何者であるべきか、ルール、フォーマット。一度設定すれば、全体に適用されます。
  • ユーザー(User) — それはあなたです。あなたの質問と入力を、ターンごとに。
  • アシスタント(Assistant) — モデルの返答。(例としてアシスタントに言葉を言わせることもできます。few-shotを参照。)

なぜシステムプロンプトが最も強力なレバーなのか

システムメッセージは、それに続くすべてを枠づけます。ここでモデルの役割、基準、トーン、厳格なルールを設定し、モデルはそれを重く扱います。会話(やアプリ)全体で一貫した挙動が欲しいなら、ユーザーのターンに埋め込むのではなく、ここに置きましょう。

実際には:

  • チャットアプリ: あなたのアカウントのカスタム指示が、個人用のシステムプロンプトとして機能します。
  • Claude Code: CLAUDE.mdが、あなたのプロジェクトにとってこの役割を果たします。
  • API: systemパラメータ

同じ考え方の、3つの表面です。

実践的なヒント

  • システムプロンプトで具体的に役割、ルール、出力フォーマットを述べましょう。最も効果の高い場所です。
  • ユーザーのターンは実際のタスクに集中させ、毎ターンでルールを貼り直さないようにしましょう。
  • 指示が衝突したら? 後から来た明示的なユーザー指示が、曖昧なシステム指示を上書きすることがあります。意外な結果を避けるため、一貫性を保ちましょう(トラブルシューティング)。

次に読む