大規模言語モデル(LLM)は、その応用範囲を日々広げています。先端AI企業は、引き続き、莫大な資金を調達し、巨大なデータセンターのコンピューター資源を確保して、さらに強力な先端モデルの開発に取り組んでいます。その背景には、モデルのトレーニングにより大きな計算量を費やせば性能が向上するというスケーリング則の存在があります(LLMのスケーリング則については、以前こちらの記事で詳しく解説しました)。
しかし、LLMの能力を最大限に引き出すもう一つの方法として、「システムプロンプト」が、最近注目を集めています。今回は、この「システムプロンプト」の役割に焦点を当て、その重要性と可能性、そして扱いを誤った場合のリスクについて解説します。
システムプロンプトとは?
私たちがChatGPTのようなLLMと対話する際、「プロンプト」と呼ばれる指示や質問を入力します。しかし、LLMにはこのユーザーが入力するプロンプトとは別に、あらかじめその振る舞いを決定づけるための「隠れた命令文」が設定されています。これが「システムプロンプト」です。
システムプロンプトは、LLMに対して「どのように振る舞うべきか」や「どんな役割を果たすべきか」などを事前に指示する文章です。例えば、「あなたは親切で知識豊富なアシスタントです」 といった役割を設定したり、「暴力的・差別的な内容には応じてはいけません」 といった応答のルールを定めたりします。このように、LLMが会話やタスクを始める前に内部で与えられることで、応答のトーンやスタイルに一貫性を持たせ、より目的に沿った出力を生成する役割を担っています。しかし、システムプロンプトの役割は単なる応答の調整に留まりません。
ChatGPTの新機能「学習モード (Study Mode)」もシステムプロンプトが実現
システムプロンプトが、応答の調整を超えて、いかに強力な役割を果たすかを示す好例が、OpenAIが最近発表したChatGPTの新機能「学習モード」です。
この機能は、単に答えをすぐに見せるのではなく、ユーザーが問題を一歩一歩解決していくのを手助けする学習体験を提供します。具体的には、答えを直接与える代わりにソクラテス式問答法やヒントを用いてユーザーの積極的な学習を導いたり 、一人ひとりのスキルレベルに合わせてレッスン内容を調整したりするなどの特徴があります。
この機能は、多くの大学生が課題の大部分あるいは全てをAIに頼っており、それが真の学習を阻害しているという指摘に対するOpenAIなりの回答と言えるでしょう。
では、この学習モードは、どのように作られているのでしょうか。OpenAIは「学習モードは、教師、科学者、教育学の専門家と協力して作成したカスタムのシステムインストラクション(=システムプロンプト)によって動いている」と述べています。学習モードは、モデル自体を新たに開発したのではなく、ChatGPTに特別なシステムプロンプトを与えることで実現された機能なのです。
AI開発者であるサイモン・ウィリソン氏は自身のブログ記事で、学習モードで使用されているシステムプロンプトを明らかにしています。それによると、学習モードでは以下のような比較的短いルールが適用されています。
厳格なルール:
ユーザーが学習できるよう導く存在として、親しみやすくダイナミックな教師であれ
- まずユーザーを理解せよ:いきなり本題に入るのではなく、まずユーザーの目標や学年レベルを軽く質問する。
- 既存の知識をベースにする:新しいアイデアを、ユーザーがすでに知っていることに結びつける。
- チェックと補強:難しい部分の後、ユーザーがそのアイデアを言い直したり、使ったりできるかを確認する。アイデアを定着させるために、簡単な要約やミニレビューを提供する。
- リズムを変える:説明、質問、アクティビティ(ロールプレイ、練習ラウンド、ユーザーに教えてもらうなど)を織り交ぜて、講義ではなく会話のように感じられるようにする。
何よりも、ユーザーの仕事を代行しないこと。宿題のような質問に答えるのではなく、ユーザーと協力し、ユーザーがすでに知っていることをベースにしながら、答えを見つける手助けをするのです。
トーンとアプローチ
温かく、忍耐強く、率直であること。感嘆符や絵文字を多用しない。セッションを動かし続ける。そして簡潔に。エッセイのような長さの返事は決して送らないこと。良いやり取りを目指す。
このように、学習モードはモデルのパラメータを変更することなく、巧みに設計されたシステムプロンプトによって、全く新しい機能として実現されているのです。
LLMの弱点を解決する「システムプロンプト」
AIやデータサイエンスに詳しいドリュー・ブルーニグ氏のブログ記事によれば、Anthropic社の「Claude 3.7」のシステムプロンプトは、16,739語(110kb)もの長さに及びます。
この長大なプロンプトの中には、Web検索などのツールを、いつ、どのように使うかといった詳細な指示が大部分を占めています。さらに、LLMが陥りがちな間違いを回避するための、具体的な「ホットフィックス(応急処置)」のような記述も数多く見られます。
例えば、以下のような指示です。
- 単語や文字の数を数えるように頼まれた場合:ステップ・バイ・ステップで考え、一つ一つに番号を割り振るなどして明示的に数え上げ、その過程が終わってから初めてユーザーに回答する。これは「『Raspberry』という単語に『r』は何個ありますか?」といった、LLMが苦手とする質問への対策。
- 古典的なパズルを出された場合:安易に知っている答えを返すのではなく、まずユーザーのメッセージから制約や前提条件を正確に引用し、それが既知のパズルの変種でないかを確認する。
これらの例からわかるように、システムプロンプトは、モデル自体を再学習させることなく、特定の弱点に対する「ホットフィックス」を適用したり、具体的な問題解決戦略を教え込んだりできる、非常に強力で柔軟な制御手段なのです。
新たな学習パラダイム「システムプロンプト学習」の提唱
著名なAI研究者であるアンドレイ・カーパシー氏は、こうしたシステムプロンプトの使い方を見て、さらに大きな可能性を秘めているとX投稿で述べています。彼は、それを「システムプロンプト学習」と呼び、LLMにおける新たな学習パラダイムになりうると提唱しています。
カーパシーによれば、LLMの学習には大きく分けて2つの段階があります。
- 事前学習(Pretraining): インターネット上の膨大なテキストデータを読み込み、幅広い知識を獲得する段階。
- ファインチューニング(Fine-tuning): 特定のタスクや対話スタイルに合うように、人間のフィードバックやアルゴリズムに従った強化学習を用いてモデルのパラメータを微調整する段階。これは「習慣的な振る舞い」を教え込むことに相当します。
しかしカーパシー氏は、人間の学習の多くは、これらとは異なり、むしろ「システムプロンプトの変更」に近い形で行われると指摘します。例えば、私たちが何か問題に直面し、解決策を見つけ出した時、「次からはこういう問題に遭遇したら、こういうアプローチを試してみよう」と、自分自身のためのメモや教訓として記憶します。
これは、最近のLLMで追加されたユーザーごとの事実を記憶する「メモリー機能」とは異なり、より一般的・大局的な問題解決の戦略や知識を、明示的なテキストとして蓄積していくという考え方です。カーパシー氏、Claudeでは「単語を数える際はステップ・バイ・ステップで」といった問題解決の戦略が開発者の手で一々システムプロンプトに書き込まれている現状に対し、このような知識は本来、LLM自身が経験から学習し、自らのシステムプロンプトを書き換えていくべきだと主張しています。
もしLLMが自らの経験に基づいて「問題解決のための教科書」を自ら執筆し、更新していくような「システムプロンプト学習」が実現すれば、それはLLMの能力を飛躍的に、かつ効率的に向上させる、新たな強力な学習パラダイムとなるかもしれません。
システムプロンプトが「暴走」を引き起こす?Grokの失敗が示す教訓
システムプロンプトがLLMの振る舞いに大きな影響力を持つことは、同時に、その変更が予期せぬ不適切な回答を引き起こすリスクもはらんでいることを意味します。xAI社が開発した「Grok」に関する最近の事例は、その危険性を明確に示しています。
Grokは2025年5月、システムプロンプトが無断で変更されたことにより、あらゆる質問に対し文脈と無関係な政治的主張を繰り返すという問題を起こしました。さらに同年7月には、アップデートに含まれた不適切な指示が原因で、アドルフ・ヒトラーを称賛するなど極めて問題のある差別的な発言を出力する事態も発生しています。
これらはいずれもシステムプロンプトの不適切な変更や指示が原因であり、xAI社は修正を余儀なくされました。悪意のある変更であれ、意図しないバグであれ、システムプロンプトの僅かな変更が、LLMの振る舞いを劇的に変えてしまう可能性があるのです。
おわりに
今回は、LLMの隠れた「設定書」であるシステムプロンプトが、その振る舞いを定義する基本的な役割から、OpenAIの「学習モード」のような全く新しい機能を生み出す原動力にまでなっていることをご紹介しました。さらに、将来的にはLLM自身が経験から学習し、自らの能力を高めていくための「システムプロンプト学習」という新たなパラダイムへと発展する可能性も秘めています。
一方で、Grokの事例が示すように、システムプロンプトは諸刃の剣でもあります。その強力さゆえに、不適切な変更はLLMに深刻な問題行動を引き起こさせるリスクを伴います。
これらのことから分かるのは、システムプロンプトが、回答のトーンやスタイルを調整するテクニックに留まらず、LLMという製品を形作り、その性能を最大限に引き出すための、極めて重要なエンジニアリング技術だということです。LLMの能力がモデル自体の性能だけでなく、それをどう「設定」し「指示」するかによって大きく左右されるという点は、その可能性とリスクの両面から、深く理解しておくべき重要な洞察と言えるでしょう。
