システムプロンプトとは
この記事の結論
- システムプロンプトとは、会話全体を通してAIの役割・範囲・ルールを決める指示のことです。多くはアプリの作り手が書き、利用者の入力より優先して扱われます。
- 書く内容は「あなたは何者か」「何をして何をしないか」「どんな形で返すか」の3つが中心です。1文の役割指定でも出力の方向は変わります。
- システムプロンプトは秘密の金庫ではありません。見られても困らない内容だけを書き、鍵や権限の制御はAIの外側で行います。
しすてむぷろんぷと/System Prompt
会話全体を通してAIの役割やルールを決める指示で、利用者の入力より優先して扱われます。
最終更新: 2026-09-26
システムプロンプトとは(意味と読み方)
システムプロンプトとは、会話全体を通してAIの役割・範囲・ルールを決める指示のことです。読み方は「しすてむぷろんぷと」です。利用者が毎回打つプロンプトとは別の枠で渡され、会話のどの時点でも前提として効き続けます。
API では、利用者の発言とは別の場所に入れます。Anthropic 社の API には system という専用の引数があり、OpenAI 社の API では developer 役のメッセージや instructions 引数がこの役を担います。呼び名は違っても、「アプリの作り手が決める土台の指示」という位置づけは共通です。
システムプロンプトの優先順位
システムプロンプトの肝は優先順位です。OpenAI 社の公式ガイドは、アプリ開発者の指示(developer)は利用者の指示(user)より優先され、利用者の指示はその後ろに置かれると説明しています。同じガイドは、開発者の指示を関数の定義、利用者の入力をその関数に渡す引数にたとえています。
たとえばシステムプロンプトに「回答は日本語で」とあり、利用者が「英語で答えて」と頼んだ場合、どちらに従うかはモデルの設計と指示の書き方しだいです。作り手が譲れない条件は、理由とあわせてシステムプロンプトに書き、利用者に任せてよい部分は任せると明記しておくと、衝突したときの振る舞いが読みやすくなります。
ただし、優先されるといっても絶対ではありません。利用者の入力や読み込んだ文書に紛れた命令で上書きされることがあり、これがプロンプトインジェクションの問題です。
システムプロンプトに書く内容と具体例
書く内容は次の3つに分けると抜けが減ります。
- 役割:
あなたは社内の経費精算ルールに答える窓口です。Anthropic 社のガイドは、役割を1文与えるだけでも振る舞いと口調が用途に寄ると書いています。 - 範囲:答えてよい話題と、断る話題。断るときの言い方も決めておきます。
- 出力のルール:敬語かどうか、文字数の目安、箇条書きか表か。
AIコーディングエージェントでは、ツール自体が持つシステムプロンプトに加えて、利用者が用意する指示ファイルが会話の最初に読み込まれます。たとえば Claude Code は、リポジトリ直下の CLAUDE.md や AGENTS.md をセッション開始時に読みます。ここに「テストは npm test で回す」「main に直接 push しない」と書いておけば、毎回言い直す必要がありません。
ただし公式ドキュメントは、これらのファイルは文脈として扱われ、強制される設定ではないと明記しています。どんな場合でも止めたい操作は、フックなどの仕組みで実行前に遮断するよう案内しています。
システムプロンプトのよくある誤解
- 誤解:システムプロンプトは利用者から見えないので安全だ
実際:巧妙な聞き方で中身を引き出されることがあります。OWASP のLLM07(システムプロンプトの漏えい)は、システムプロンプトを秘密とみなすべきではなく、セキュリティの制御として使うべきでもないとしています。 - 誤解:禁止事項を書けば、その操作は起きない
実際:モデルへのお願いであって、仕組みによる遮断ではありません。権限の確認や危険な操作の停止は、AIの外側のコードで決定的に行います。 - 誤解:細かく書き込むほど従ってくれる
実際:長いほど個々の指示が埋もれやすくなります。例外処理を全部書き連ねるより、判断の方針と理由を短く示すほうが伝わる場面が多くあります。
システムプロンプトを運用するときの注意点
関連用語
関連記事
出典・参考資料
- メッセージの役割と優先順位(API 公式ドキュメント):developer の指示が user より優先されること、関数定義と引数のたとえ
- システムプロンプトでの役割指定(API 公式ドキュメント):役割を1文与えるだけでも振る舞いと口調が変わるという説明
- プロジェクトの指示ファイルの読み込み(AIコーディングエージェント公式ドキュメント):指示ファイルはセッション開始時に読まれ、強制される設定ではなく文脈として扱われる
- LLM07:2025 System Prompt Leakage(OWASP GenAI Security Project):システムプロンプトを秘密やセキュリティ制御として扱わないという原則
システムプロンプトについてよくある質問
Q1. システムプロンプトとは何ですか?
会話全体を通してAIの役割・範囲・ルールを決める指示のことです。多くはアプリの作り手が書き、利用者が毎回打つプロンプトとは別の枠で渡されます。
Q2. システムプロンプトと普通のプロンプトの違いは何ですか?
効く範囲と優先順位が違います。普通のプロンプトはその回の依頼で、システムプロンプトは会話のすべての回に前提として効きます。また、多くのAPIでは作り手の指示が利用者の指示より優先されるよう設計されています。
Q3. チャットAIを使うだけの人もシステムプロンプトを書けますか?
サービスによっては書けます。設定画面にカスタム指示やプロジェクト単位の指示欄があれば、そこに書いた内容が各会話の前提として使われます。AIコーディングエージェントでは、リポジトリに置く指示ファイルがこの役割を担います。