ChatGPTが途中からプロンプトを守らなくなるのはなぜか?原因と対処法を解説
「最初は指示通りに動いていたのに、会話が長くなるにつれてChatGPTが指示を無視し始めた」という経験をしたことがある方は多いと思います。文体を統一してほしかったのに崩れてくる、「箇条書きで回答して」と言ったのに途中から普通の文章に戻る、キャラを演じさせていたのに素に戻る——これらはすべて同じ原因から起きています。
結論から言うと、ChatGPTが途中からプロンプトを守らなくなるのは「コンテキストウィンドウの限界」と「注意力の希薄化」が主な原因です。バグではなく、言語モデルの仕組み上の特性です。しかし、対処法を知っておけば大幅に改善できます。

なぜChatGPTは途中からプロンプトを守らなくなるのか
原因①:コンテキストウィンドウから指示が「押し出される」
ChatGPTには「コンテキストウィンドウ」と呼ばれる、一度に処理できる情報量の上限があります。これはトークン(単語や文字の単位)で測られ、GPT-4oの場合は128,000トークン程度です。
会話が長くなると、やり取りの総量がこのウィンドウを超えてしまいます。すると古いテキストから順番にウィンドウの外に押し出され、ChatGPTはその内容を「見えない情報」として扱うようになります。最初に入力したプロンプト(「箇条書きで答えて」「です・ます調で書いて」など)がウィンドウ外に出てしまうと、その指示はなかったことになります。
一見するとキャパが大きそうに見えますが、長い会話・大量のコピペ・コードの貼り付けなどが重なると、意外と早く限界に達します。
原因②:注意力(アテンション)の希薄化
コンテキストウィンドウの範囲内であっても、指示が守られなくなることがあります。これは「アテンションの希薄化」と呼ばれる現象です。
大規模言語モデルは、文章を処理する際に全トークンに対して重み付け(アテンション)を計算します。会話が長くなると、最初の指示に割り当てられる注意の比重が薄まり、直近の会話内容の影響が相対的に強くなります。これが「会話の流れに引きずられて、最初の指示より最近のやり取りを優先してしまう」という現象を生みます。
原因③:ロールプレイや性格設定の「揺り戻し」
「あなたは厳格な編集者として振る舞ってください」「タメ口で話してください」などの性格・役割指示は特に維持が難しいです。ChatGPTはデフォルトの応答スタイルに戻ろうとする傾向があり、会話ターン数が増えるほどデフォルトに引っ張られます。これはAnthropicやOpenAIのモデルに共通する挙動です。



指示が崩れやすい状況のパターン
すべての状況で均一に崩れるわけではなく、次のような状況で特に顕著になります。
| 状況 | 崩れやすさ | 主な原因 |
|---|---|---|
| 20ターン以上の長い会話 | 高 | コンテキストウィンドウの圧迫 |
| 大量のテキスト・コードを貼り付けた後 | 高 | トークン消費が急増 |
| ロールプレイ・キャラ設定 | 高 | デフォルトへの揺り戻し |
| 文体・フォーマット指定 | 中 | アテンションの希薄化 |
| 複数の条件を同時に指定 | 中 | 条件が多いほど一部が無視されやすい |
| 3〜5ターン以内の短い会話 | 低 | コンテキストに十分余裕がある |

ChatGPTにプロンプトを守らせ続ける5つの対処法
対処法①:重要な指示を会話の途中で再入力する
最もシンプルで即効性のある対処法です。指示が崩れてきたと感じたら、もう一度明示的に伝え直します。
【リマインド】
以下の指示に従ってください:
・必ず箇条書きで回答する
・語尾は「です・ます調」に統一する
・1項目あたり2文以内に収める
改めて次の質問に答えてください:〇〇について教えてください
5〜10ターンごとに主要な指示をまとめて再入力する「定期リマインド」を習慣にするだけで、指示の維持率が大幅に改善します。
対処法②:会話を短く区切って新しいチャットを始める
根本的な解決策は「1つのチャットで抱えすぎない」ことです。1チャット=1タスクを原則にして、タスクが終わったら新しいチャットを開くことでコンテキストをリセットできます。
次のチャットに引き継ぎが必要な情報は、「この会話を200字で要約して」とChatGPTに整理させてから、新チャットの冒頭に貼り付けると効率的です。
対処法③:カスタム指示(Custom Instructions)を使う
ChatGPTのカスタム指示機能を使うと、すべての会話に自動的に適用される「永続的な指示」を設定できます。Settings → Personalization → Custom Instructionsから設定可能です。
- 文体(です・ます調、タメ口など)
- 回答スタイル(箇条書き重視、簡潔重視など)
- 専門性のレベル(初心者向け、専門家向けなど)
- 自分の職業・目的などの文脈情報
カスタム指示はシステムプロンプトとして毎回挿入されるため、通常の会話内の指示より優先度が高く、安定して維持されやすいです。
対処法④:プロジェクト機能を使う
ChatGPTのプロジェクト機能では、プロジェクト単位で「指示・資料・過去の会話」をまとめて管理できます。プロジェクト内に設定した指示は、そのプロジェクト内のすべての会話に自動適用されます。
たとえば「ブログ執筆プロジェクト」を作り、「です・ます調・読者は30代会社員・文字数は1,500字程度」という指示を登録しておけば、毎回同じ指示を入れ直す手間がなくなります。


対処法⑤:重要な指示は「先頭・末尾の両方」に書く
アテンション研究では、文章の先頭と末尾は中間より注意されやすいことが知られています(初近効果)。プロンプトが長い場合、守ってほしい指示を冒頭と末尾の両方に書くことで、モデルが無視しにくくなります。
【重要:必ず箇条書きで回答すること】
(本文の指示内容)
〇〇についての情報を提供してください。
条件は以下の通りです:
・〜〜〜
・〜〜〜
【再確認:上記の回答は箇条書き形式で出力すること】

それでも守られない場合:モデルを変えるか用途を分ける
上記の対処法を試しても指示の維持が難しい場合は、以下を検討してください。
より上位のモデルに切り替える
GPT-4oよりもo3などの推論モデルは、複雑な条件の維持能力が高い傾向があります。ただし推論モデルはレイテンシが高くコストもかかるため、「どうしても指示を厳守させたいタスク」に絞って使うのが現実的です。
用途を分割する
「文体チェック」「内容生成」「要約」を1つのチャットで全部やらせようとすると、指示が複合化して維持が難しくなります。タスクを細分化し、1チャットあたり1〜2個の指示に絞ると、維持率が安定します。
ChatGPTの利用制限やコンテキスト管理については「Claudeのコンテキストウィンドウは何トークンか?上限と長文対策を解説」も参考になります。また、毎回同じ指示を入れ直す手間を省く方法として、「メタプロンプトで「プロンプトを考える手間」を省こう」もあわせてどうぞ。

まとめ:「指示が崩れる」は仕様。設計で回避するのが正解
ChatGPTが途中からプロンプトを守らなくなる原因と対処法をまとめます。
| 原因 | 対処法 |
|---|---|
| コンテキストウィンドウから押し出される | 会話を短く区切る・中間要約を活用する |
| アテンションの希薄化 | 重要な指示を先頭・末尾両方に書く・途中で再入力する |
| ロールプレイの揺り戻し | カスタム指示・プロジェクト機能を使う |
「ChatGPTが言うことを聞かない」のはバグでも能力不足でもなく、言語モデルの構造的な特性です。重要な指示ほど「何度でも入れ直す」「永続設定に登録する」「チャットを分ける」という設計で対処するのが正解です。
プロンプトを1回書けばずっと守り続けてくれるという期待を手放し、「こまめにリマインドが必要なツール」として使いこなす視点に切り替えると、ストレスが大幅に減ります。


