システムプロンプトの設計

APIやカスタムAIで使われる「システムプロンプト」。AIの振る舞いを根本から設定する仕組みを学びましょう。

編集・検証: AIパスポートスタディ編集部 公式情報: GUGA 生成AIパスポート公式ページ 制作・検証方針
香月 リサ 先生(笑顔) 香月 リサ 先生

システムプロンプトは、AIの基本的な振る舞いを定義する特別な指示よ。

ユーザーの入力とは別に、裏側であらかじめ設定しておくプロンプトなのよ。

深見 つむぎ(普段) 深見 つむぎ

ChatGPTの『Custom Instructions』やClaudeの『Projects指示』のようなものですか?

香月 リサ 先生(笑顔) 香月 リサ 先生

まさにそれね、つむぎさん。
API経由でAIを使うとき、systemロールとして設定するのが本来の形。

たとえば『あなたはカスタマーサポートのアシスタントです。
常に丁寧語で応答し、わからないことは正直に伝えてください』と設定できるわ。

戸倉 ジャスミン(笑い) 戸倉 ジャスミン

毎回『丁寧に答えてね』って書かなくても、最初に一回設定しとけばOKってこと?

香月 リサ 先生(普段) 香月 リサ 先生

そう!
会話全体に一貫して適用されるのがシステムプロンプトの最大の特長。

ロールの設定、回答形式の指定、禁止事項の明示など、サービス全体の品質をコントロールできるの。

雪村 ましろ(笑顔) 雪村 ましろ

お店のマニュアルみたいなものなんですねぇ…店員さん全員が同じルールで対応する感じっ!

香月 リサ 先生(笑顔) 香月 リサ 先生

素晴らしい例えよ、ましろちゃん!
まさにAIの行動マニュアルと言えるわ。

深見 つむぎ(普段) 深見 つむぎ

先生、LLMのAPIでは、ユーザーのメッセージとシステムプロンプトを構造的に分けて送るんですよね。

香月 リサ 先生(普段) 香月 リサ 先生

よく知っているわね。
OpenAIのAPIでは`{"role": "system", "content": "…"}`の形で送るの。

この分離があることで、ユーザー入力がシステム指示を上書きしにくくなる仕組みになっているわ。

戸倉 ジャスミン(びっくり) 戸倉 ジャスミン

へー、ちゃんと役割分担されてるんだ?!

香月 リサ 先生(普段) 香月 リサ 先生

ただし完璧ではないの。
巧妙なプロンプトインジェクション(悪意ある入力でルールを上書きする攻撃)には脆弱な面もあって、

これも後の回で詳しく扱うわよ。

雪村 ましろ(しょんぼり) 雪村 ましろ

ふぇぇ…AIを守るお仕事も大変なんですねぇ……

深見 つむぎ(普段) 深見 つむぎ

補足すると、企業向けAIサービスではシステムプロンプトに『機密情報を出力しない』『個人情報を扱わない』などのガードレールを組み込むのが一般的ですね。

香月 リサ 先生(普段) 香月 リサ 先生

その通り。
試験でも『システムプロンプト=AIの基本ルールを定める上位指示』という定義は頻出ポイントよ。

戸倉 ジャスミン(あせる) 戸倉 ジャスミン

てかさ、システムプロンプトってユーザーからは見えないものなの?

香月 リサ 先生(笑顔) 香月 リサ 先生

一般利用のChatGPTやClaudeのWebサービスでは、内部システムプロンプトはユーザーには表示されないの。

各社が丁寧に設計したガードレールが裏で動いているのよ。

深見 つむぎ(普段) 深見 つむぎ

開発者として独自のチャットボットを作る場合は、自分で設計するわけですね。

香月 リサ 先生(笑顔) 香月 リサ 先生

そう。
たとえば自社の問い合わせボットなら『製品Xについてのみ答える』『価格情報は最新版を参照する』などのルールを仕込むの。

この設計力がプロンプトエンジニアリングの上級スキルね。

雪村 ましろ(笑顔) 雪村 ましろ

見えないところでAIが守られてたんですねぇ…なんだか感動…

戸倉 ジャスミン(あせる) 戸倉 ジャスミン

先生、システムプロンプトってどれくらいの長さがちょうどいいの?

香月 リサ 先生(笑顔) 香月 リサ 先生

いい質問ね。
一般的には500〜2000トークン程度が目安。
長すぎるとコンテキストウィンドウを圧迫するし、

短すぎるとルールが伝わりきらないの。
必要な指示に絞って、冗長さを避けるのがコツね。

深見 つむぎ(普段) 深見 つむぎ

トレードオフを意識した設計、ですね。

確認クイズ

システムプロンプトの特徴として正しいものはどれか?

  1. ユーザーが毎回入力する必要がある
  2. 会話全体に一貫して適用される
  3. AIの学習データを変更する
  4. トークン消費が発生しない
こたえを見る

正解: 2. 会話全体に一貫して適用される

システムプロンプトは一度設定すると会話全体に一貫して適用される特別な指示です。毎回入力する必要はなく、学習データを変更することもなく、トークン消費は通常通り発生します。

🔖 この記事の関連書籍

Amazonアソシエイトリンクを含みます。他分野は おすすめ書籍ページ へ。